#lead-kanban-trash.highlight-trash {
  background-color: #c82333;
  transform: scale(1.1);
}
.form-group {
  padding-bottom: 5px;
}
.btn-ref {
position:relative;
top:-2px;
background:#131173;
border-radius:20px;
padding:5px 10px;;
}

body:not([data-color="F2F2F2"]) .page-title {
  background: #fafafa;
  border: 1px solid #eaebec;
  color: #000000;
  border-radius: 15px;
  box-shadow: none;
  margin: 10px 0px;
  padding:0px 10px;
}
body:not([data-color="F2F2F2"]) .modal-header {
  background: #fafafa;
  border: 1px solid #eaebec;
  color: #000000;
  border-radius: 15px;
  box-shadow: none;
  margin: 10px 10px;
 
}
body:not([data-color="F2F2F2"]) .datepicker.dropdown-menu {
  border-radius: 15px;
  border: 1px solid #f1f1f5;
 box-shadow: 0 5px 40px rgb(0 0 0 / 40%);
}
.border-primary {
  border-color: #ffc107 !important;
}
body:not([data-color="F2F2F2"]) .select2-search input {
  border-color: #e2e7f1;
  border-radius: 15px;
  color: #555;
}
body:not([data-color="F2F2F2"]) .select2-drop,
body:not([data-color="F2F2F2"]) .popover,
body:not([data-color="F2F2F2"]) .dataTables_filter input,
body:not([data-color="F2F2F2"]) .modal-content,
body:not([data-color="F2F2F2"]) .card-footer:last-child,
body:not([data-color="F2F2F2"]) .bg-white {
  border-radius: 15px !important;
  }
body:not([data-color="F2F2F2"]) .filter-section-container {
  border-radius: 15px !important;
}
body:not([data-color="F2F2F2"]) .fc-scrollgrid,
body:not([data-color="F2F2F2"]) .fc-button-group {
  border-radius:15px;
 }
/* События календаря — чип (legacy + vst-fc-event-chip) */
#event-calendar .fc-event .clickable.p5.w100p.inline-block,
#event-calendar .vst-fc-event-chip {
  border-radius: 8px !important;
  overflow: hidden;
}
body:not([data-color="F2F2F2"]) .dataTables_filter input {
  border-radius: 15px;
  border: 1px solid #f1f1f5 !important;
  box-shadow: none;
  padding: 7px 10px;
  outline: none;
  font-weight: normal;
  background: url(../images/search2.svg) no-repeat 96% 45% #fff;
  width: 200px !important;
  transition: all 0.5s;
  height: 32px;
}
.container-fluid .form-group input[type="radio"].form-check-input:checked {
  background-color: #072451 !important;
   border:2px solid #072451 !important;
  box-shadow: 0 0 0 2px #ffffff; 
  border-radius:50px;
  padding:10px;
}
.container-fluid .form-group input[type="radio"].form-check-input {
  background-color: #ffffff !important;
  border:2px solid #072451 !important;
  box-shadow: 0 0 0 2px #ffffff; 
  border-radius:50px;
  padding:10px;
  margin-top:-2px;;
}
.btn-default {
background-color: #ffffff;
border: 1px solid #07245163;
color: #4e5e6a;
}
.btn-info {
  background: #174282;
  border-width: 1px;
  border-style: solid;
  border-color: #174282;
  border-image: initial;
  color:#fff;
}
.container-fluid .form-group label{
color:#072451;
font-weight:500;
}
.folder-description-block {
  font-size: 12px;
  line-height: 1.6;
  color: #000000;
margin-left:-55px;
margin-top:30px !important;
  background-color: #f9f9f9;
  padding: 12px 15px;
  border-radius: 6px;
  border: 1px solid #e1e1e1;
  margin-top: 10px;
}
.row {
      margin-left: 0 !important;
      margin-right: 0 !important;
  }
.gs-view-sidebar-wrapper {
position:absolute;
right:30px;
top:0px;
width:300px !important;
min-height:1000px;
}
/* File manager layout — см. custom-style-3.css (ширина через --fm-details-w) */
#file-details-box {
  transition: width 0.3s ease;
}
#file-details-box.narrow {
  width: 800px !important;
}
#toggle-width-button:not(.fm-toolbar-btn) {
  background-color: #f0f0f0;
  border-radius: 50%;
  width: 45px !important;
  color:#072451;
  height: 45px !important;
  padding:0px;
  border: 1px solid #ddd;
  box-shadow: none;
  transition: all 0.2s ease;
  margin: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
#close-details-button:not(.fm-toolbar-btn) {
  background-color: #f0f0f0;
  border-radius: 50%;
  margin: 0;
  width: 45px !important;
  color:#072451 !important;
  height: 45px !important;
  padding: 0;
  border: 1px solid #ddd;
  box-shadow: none;
  transition: all 0.2s ease;
  opacity: 1;
  flex-shrink: 0;
}
#toggle-width-button:not(.fm-toolbar-btn):hover,
#close-details-button:not(.fm-toolbar-btn):hover {
  background-color: #e2e2e2;
  border-color: #ccc;
  transform: scale(1.05);
}
.sticky-details-section.stick {
  transition: width 0.3s ease;
}
.sticky-details-section.stick.narrow {
  width: 300px !important;
}
body:not([data-color="F2F2F2"]) .content-sidebar,
body:not([data-color="F2F2F2"]) #help-left-panel {
background:#ffffff;
padding:10px;
border-radius:15px;
margin-top: 20px;
box-shadow: none;
-webkit-box-shadow: none !important;
}
.bg-info {
background-color: #072451 !important;
}
.bg-primary {
background-color: #072451 !important;
color: #fff;
}
/* width задаётся в custom-style-3.css через flex */
#file-manager-items-box {
  flex: 1 1 auto;
  min-width: 0;
  width: auto !important;
}
.no-file-selected-text {
  position: absolute;
  left: -77px;
  max-width: 240px;
  text-align: center;
  margin-top: 10px;
}
@media (min-width: 991px) {
  .sidebar-toggled .sidebar-menu li:hover {
      width: 250px;
      -webkit-transition: none;
      transition: none;
      border-radius: 15px;
    border-bottom-right-radius:0px !important;
    border-top-right-radius:0px !important;
  }
}
.sidebar-menu  .expand.main {
border-bottom-right-radius:0px !important;
    border-top-right-radius:10px !important;
}
.sidebar-menu  .expand.main:hover {
border-bottom-right-radius:0px !important;
    border-top-right-radius:10px !important;
}
.sidebar-menu li ul {
color: #ffffff;
font-size:12px;
font-weight:600;
padding: 0.8rem 0.4rem;
}
@keyframes shake {
0% { transform: translateX(0) scale(1.1); }
20% { transform: translateX(-3px) scale(1); }
40% { transform: translateX(3px) scale(1.1); }
60% { transform: translateX(-3px) scale(1); }
80% { transform: translateX(3px) scale(1.1); }
100% { transform: translateX(0) scale(1); }
}
.shake-animation {
animation: shake 0.6s ease-in-out;
}
.btn-maroon {
  background-color: #800000;
  color: #fff;
  border-color: #660000;
}
.bg-maroon {
  background-color: #800000 !important;
}
.podskazka {
font-size:9px;
color:#000;
font-weight:700;
margin-top:10px;
margin-left:-194px;
text-decoration:none;
background:#cccccc33;
}
.allinfowidget .list-group-item {
  font-size: 12px;
  font-weight: 400;
  color: #000;
  padding: 8px 0px;
  border: none;
}
.allinfowidget .allinfowidget-item span,
.allinfowidget .allinfo-label {
  font-weight: 400;
  color: #000;
  font-size: 12px;
}
.allinfowidget .allinfowidget-item a,
.allinfowidget .allinfowidget-item .allinfo-text {
  font-weight: 600;
  color: #000;
  font-size: 12px;
}
.allinfowidget .allinfo-icon-wrapper {
  width: 30px;
  height: 30px;
  min-width: 30px;
  min-height: 30px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #ccc;
}
.allinfowidget .allinfo-icon-wrapper img {
  max-width: 16px;
  max-height: 16px;
  object-fit: contain;
}

/* Сегмент в модалке проекта — кругляшик с иконкой в Select2 */
.segment-option-circle {
  width: 22px;
  height: 22px;
  min-width: 22px;
  min-height: 22px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.segment-option-icon {
  max-width: 12px;
  max-height: 12px;
  object-fit: contain;
}

/* Заказчик + Теги — 70% / 30% */
.client-labels-col-70 { flex: 0 0 70%; max-width: 70%; }
.client-labels-col-30 { flex: 0 0 30%; max-width: 30%; }
@media (max-width: 767px) {
  .client-labels-col-70, .client-labels-col-30 { flex: 0 0 100%; max-width: 100%; }
}

/* Сегмент / Тип проекта / Применение — 40% / 60% колонки */
.project-type-col-40 { flex: 0 0 40%; max-width: 40%; }
.project-type-col-60 { flex: 0 0 60%; max-width: 60%; }
@media (max-width: 767px) {
  .project-type-col-40, .project-type-col-60 { flex: 0 0 100%; max-width: 100%; }
}

/* Комбобокс «Тип проекта» — иконка и название, значения друг под другом */
.business-type-combobox {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
}
.business-type-combobox--horizontal {
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 16px;
}
.business-type-combobox--horizontal .business-type-option {
  padding: 4px 0;
}
.business-type-combobox .business-type-icon {
  filter: brightness(0) invert(1);
}
.business-type-option {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 0;
  cursor: pointer;
  user-select: none;
}
.business-type-option:hover {
  opacity: 0.85;
}
.business-type-circle {
  width: 24px;
  height: 24px;
  min-width: 24px;
  min-height: 24px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 2px solid transparent;
  transition: border-color 0.2s;
}
.business-type-option.selected .business-type-circle {
  width: 28px;
  height: 28px;
  min-width: 28px;
  min-height: 28px;
  border-color: #174282;
  box-shadow: 0 0 0 1px #fff;
}
.business-type-option.selected .business-type-title {
  font-weight: bold;
}
.business-type-icon {
  max-width: 14px;
  max-height: 14px;
  object-fit: contain;
}
.business-type-option.selected .business-type-icon {
  max-width: 16px;
  max-height: 16px;
}
.business-type-title {
  white-space: nowrap;
}

.project-description-field,
#ajaxModal textarea.project-description-field {
  min-height: 72px;
}

.project-strategic-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 0.85rem;
  min-height: 35px;
}

.project-strategic-controls .form-check-input {
  float: none;
  margin-top: 0;
  margin-right: 0.2rem;
  vertical-align: middle;
  position: relative;
  top: 0;
}

.project-strategic-option {
  display: inline-flex;
  align-items: center;
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
}

.project-strategic-controls .podskazka {
  display: inline-flex;
  align-items: center;
  line-height: 1;
  margin-bottom: 0 !important;
}

/* Пружина текущая (конкурентная) — показ/скрытие с анимацией при смене типа проекта */
.current-spring-col {
  transition: flex 0.45s cubic-bezier(0.34, 1.56, 0.64, 1),
              opacity 0.35s ease,
              padding 0.4s ease;
}
.current-spring-col.hidden {
  flex: 0 0 0 !important;
  max-width: 0 !important;
  min-width: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow: hidden;
  opacity: 0;
}
.current-spring-col > .current-spring-row-inner {
  min-width: 0;
}

/* Верхняя строка: полоса прогресса и бейдж этапа */
.project-progress-bar-row {
  min-height: 2.5rem;
}
.project-progress-bar-wrap {
  min-width: 0;
}
.project-progress-layout .project-progress-bar {
  height: 14px;
  border-radius: 999px;
  background-color: rgba(0, 0, 0, 0.06);
  overflow: hidden;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.06);
}
.project-progress-layout .project-progress-bar .progress-bar {
  border-radius: 999px;
  transition: width 0.4s ease;
  min-width: 0;
}
.project-progress-layout .project-progress-bar .progress-bar {
  position: relative;
}
.project-progress-bar-label {
  display: none;
}
@media (min-width: 400px) {
  .project-progress-bar-label {
    display: inline;
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 11px;
    font-weight: 600;
    color: #fff;
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
    white-space: nowrap;
  }
  .project-progress-layout .project-progress-bar .progress-bar.progress-bar-label-outside .project-progress-bar-label {
    right: auto;
    left: 10px;
    color: #555;
  }
}
.project-stage-badge {
  font-size: 0.8rem;
  padding: 0.4em 0.75em;
  font-weight: 500;
  margin-top: -2px;
}
/* Нижний ряд: две колонки задаются через Bootstrap col-md-6 */
.allinfo-icon {
  width: 36px;
  height: 36px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.framemini {
margin-top: 5px !important;
  margin-bottom: 5px !important;
color:#00000000;
}
.allinfo-icon .icon-img {
  width: 35px;
  height: 35px;
}
.info-label {
  font-size: 12px;
  color: #888;
  margin-bottom: 2px;
}
.info-title {
  font-size: 16px;
  font-weight: 500;
}
.list-item-spaced {
margin:5px 20px 0px 20px;
}
.pie-chart-mod {
min-height:371px;
}
.kanban-container {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
}
.kanban-col {
  flex: 1;
  min-width: 0;
}
@media (max-width: 768px) {
  .kanban-container {
      display: block;
      white-space: nowrap;
      width: auto;
  }
  .kanban-col {
      display: inline-block;
      vertical-align: top;
      width: 175px !important;
      min-width: 175px !important;
      max-width: 175px !important;
  }
  #kanban-wrapper {
      overflow-x: auto;
  }
}
.widget-icon.custom-icon1 {
  background-color: #08306f;
  border-radius: 50%;
  padding: 6px 12px 12px 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
}
.widget-icon.custom-icon2 {
  background-color: #cdcdcd;
  border-radius: 50%;
  padding: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
}
.widget-icon.custom-icon .icon-img {
  max-width: 32px;
  max-height: 32px;
}
.button-spring-widget {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 10px;
}
.button-spring-widget .btn-outline-light {
border:1px solid#07245133;
border-radius:15px;
}
.button-spring-widget .btn-outline-light:hover {
background:#072451;
color:#fff !important;
border-radius:15px;
}
.button-spring-widget .btn-light {
background:#fff;
border:1px solid #07245100;
border-radius:15px;
}
.button-spring-widget .btn-light:hover {
background:#fff;
border:1px solid #072451;
border-radius:15px;
}
.spring-header {
  display: flex;
  flex-direction: column;
margin-top:5px;
  margin-left:120px;
  align-items: flex-start;
}
.spring-label {
  margin-left:-4px;
  font-size: 0.9rem;
  margin-bottom: 2px;
  color: #6c757d;
}
.dashboard-icon-widget.with-specs {
min-height:280px;
}
.text-center {
  text-align: center !important;
}
.dashboard-icon-widget .spec-icon {
  width: 100%;
  height: auto;
  object-fit: contain;
  display: flex;
  justify-content: center;
  align-items: center;
}
.dashboard-icon-widget .spec-icon img {
  max-width: 80%;
  padding-top:5px;
}
/* .timeline-images  * {
max-height:500px !important;
border:1px solid #0f4ab6 !important;
border-radius:15px !important;
} */
.project-progress-bar .progress {
height: 20px;
margin: 10px 0px;
box-shadow: none !important;
}
.project-stage-badge .badge {
margin: 10px 0px;
}
.form-signin .card .card-header {
background:#072451;
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:active,
input:-webkit-autofill:focus {
  background-color: #FFFFFF00 !important;
  color: #000 !important;
font-weight:600;
border:1px solid #072451 !important;
  -webkit-box-shadow: 0 0 0 10px white  !important;
  -webkit-text-fill-color: #555555 !important;
}
html,
body {
background-size:cover;
color: #000000;
font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size: 14px;
-webkit-font-smoothing: antialiased;
height: 100%;
background-position: center center;
background-repeat: no-repeat;
background-attachment: fixed;
overflow: hidden;
overflow-x: hidden;
}
.rounded-top {
border-top-left-radius:10px !important;
border-top-right-radius:10px !important;
}
.default-bg {
background-color:#07245100;
}
.help-catagory.list-group .list-group-item, .help-catagory.list-group .list-group-item.active {
  color: rgb(46 46 46);
  background: #ffffff;
  border-radius: 15px !important;
  border-width: initial !important;
  border-style: none !important;
  border-color: initial !important;
  border-image: initial !important;
  border:1px solid transparent !important;
  transition:all 0.3s;
}

.help-catagory.list-group .list-group-item.active {
  
  background: #f3f3f3 !important;
  
}
.help-catagory.list-group .list-group-item.active, .help-catagory.list-group .list-group-item:hover{
  font-weight:500;

  transition:all 0.3s;
}

.select2-container-multi .select2-choices .select2-search-choice {

  border-radius: 13px;
 
}
.select2-container-multi .select2-search-choice-close {
  left: 3px;
  top: 11px;
}

.select2-container-multi .select2-choices .select2-search-choice {
  color: #555;
  background: #fff;
  border-color: #e2e7f1;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 10px;
}

.link-project {
background:#072451;
padding:3px 10px;
border-radius:5px;
color:#fff;
font-weight:600;
}
.link-client {
border:1px solid #072451;
background:#eaeaea;
padding:3px 10px;
border-radius:5px;
color:#072451 !important;
font-weight:600;
}
.app-alert.alert-info {
background-color: #38a4f8;
color: #fff;
border-radius:15px;
}
.app-alert.alert-success {
background-color: #27ad43;
color: #fff;
border-radius:15px;
}
.app-alert.alert-danger {
background-color: #f5325c;
color: #fff;
border-radius:15px;
}
.app-alert.alert-warning {
background-color: #ffb822;
color: #fff;
border-radius:15px;
}
.app-alert a {
color: #ffffff;
}
:root {
  --vst-topbar-h: 66px;
  --vst-topbar-brand: #072451;
  --vst-topbar-hover: rgba(7, 36, 81, 0.08);
  --vst-topbar-top-gap: 6px;
  --vst-topbar-side-gap: 6px;
  --vst-topbar-bottom-gap: 6px;
  --vst-topbar-radius: 14px;
  --vst-topbar-offset: calc(var(--vst-topbar-top-gap) + var(--vst-topbar-h) + var(--vst-topbar-bottom-gap));
}
@media (min-width: 768px) {
  :root {
    --vst-topbar-top-gap: 5px;
    --vst-topbar-bottom-gap: 0px;
    --vst-topbar-h: 60px;
    --vst-topbar-offset: calc(var(--vst-topbar-top-gap) + var(--vst-topbar-h) + var(--vst-topbar-bottom-gap));
  }
  #default-navbar.navbar-custom {
    top: var(--vst-topbar-top-gap);
    min-height: 60px;
    max-height: 60px;
  }
  #default-navbar .navbar-nav .nav-link {
    min-width: 38px;
    min-height: 38px;
    padding: 7px 9px !important;
  }
  #default-navbar .navbar-nav .nav-link:hover,
  #default-navbar .navbar-nav .nav-link:focus {
    padding: 7px 9px !important;
  }
  #default-navbar .navbar-nav .nav-item #user-dropdown {
    min-height: 38px;
    padding: 3px 8px 3px 4px !important;
  }
  #default-navbar #user-dropdown .user-name {
    font-size: 12px;
  }
  #default-navbar #user-dropdown .user-rating .rating-number {
    font-size: 0.85rem !important;
    padding: 2px 6px !important;
  }
  #default-navbar .nav-jenya .jenya-avatar {
    width: 34px;
    height: 34px;
  }
  #default-navbar .nav-jenya .jenya-avatar:has(.vst-zhenya-orb--photo) {
    width: 40px;
    height: 40px;
  }
  #default-navbar .navbar-nav #topbar-back-btn {
    min-width: 38px;
    height: 38px;
  }
}
#default-navbar.navbar-custom {
  position: fixed;
  z-index: 1035;
  background: transparent;
  top: var(--vst-topbar-top-gap);
  left: calc(250px + var(--vst-topbar-side-gap));
  right: 8px;
  width: auto;
  min-height: var(--vst-topbar-h);
  margin: 0;
  padding: 0;
  border: none;
  box-shadow: none;
  overflow: visible;
  box-sizing: border-box;
}
body.sidebar-toggled #default-navbar.navbar-custom {
  left: calc(70px + var(--vst-topbar-side-gap));
}
#left-menu-toggle-mask > .overflow-auto.page-container,
#left-menu-toggle-mask > .page-container,
.page-container,
.overflow-auto.page-container,
.public-page-container,
.overflow-auto.public-page-container {
  margin-top: var(--vst-topbar-offset) !important;
}
@media (max-width: 767px) {
  #left-menu-toggle-mask > .overflow-auto.page-container,
  #left-menu-toggle-mask > .page-container,
  .overflow-auto.page-container,
  .overflow-auto.public-page-container {
    margin-top: var(--vst-mobile-topbar-total-height, calc(52px + 6px)) !important;
  }
}
#default-navbar.navbar-custom::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: #fff;
  border-radius: var(--vst-topbar-radius);
  border: 1px solid rgba(7, 36, 81, 0.1);
  box-shadow: 0 2px 8px rgba(7, 36, 81, 0.08);
  pointer-events: none;
}
#default-navbar .container-fluid {
  padding-left: 12px;
  padding-right: 14px;
  position: relative;
  overflow: visible;
}
#default-navbar .navbar-collapse,
#default-navbar .navbar-nav {
  align-items: center;
  overflow: visible;
}
#default-navbar .navbar-nav > .nav-item.dropdown {
  position: relative;
}
#default-navbar .dropdown-menu {
  z-index: 1060 !important;
}
#default-navbar .navbar-nav.me-auto,
#default-navbar .d-flex > .navbar-nav {
  gap: 2px;
}
#default-navbar .navbar-nav .nav-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  min-height: 40px;
  padding: 8px 10px !important;
  margin: 0 1px;
  border-radius: 10px;
  color: var(--vst-topbar-brand, #072451);
  background: transparent !important;
  transition: background-color 0.15s ease, color 0.15s ease;
}
#default-navbar .navbar-nav .nav-link:hover,
#default-navbar .navbar-nav .nav-link:focus {
  padding: 8px 10px !important;
  color: var(--vst-topbar-brand, #072451) !important;
  background: var(--vst-topbar-hover, rgba(7, 36, 81, 0.08)) !important;
}
#default-navbar .navbar-nav .nav-link .icon,
#default-navbar .navbar-nav .nav-link svg {
  width: 20px;
  height: 20px;
}
#default-navbar .navbar-nav .nav-item #user-dropdown {
  min-height: 40px;
  padding: 4px 10px 4px 4px !important;
  border-radius: 12px;
  gap: 8px;
}
#default-navbar #user-dropdown .user-name {
  font-size: 13px;
  font-weight: 600;
  max-width: 150px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
h4 {
color: #072451;
font-weight:700;
}
.todo-input-box input {
  padding: 10px 15px;
  height: auto;
  border: 1px solid #09357b;
  border-radius: 15px;
  box-shadow: none;
  transition: background 0.5s;
}
#help-search-box  {
  border-radius: 15px !important;
}
.form-control {
     border-radius: 15px !important;
  border: 1px solid rgba(7, 36, 81, 0.41) !important;
  background: rgb(249, 249, 249) !important;
height: 35px;
}
/* general-form.white: Select2 с видимой обводкой (перебивает app.all.css border-color:#fff) */
.general-form.white .select2-container .select2-choice {
  border: 1px solid rgba(7, 36, 81, 0.41) !important;
  background: #fff !important;
}
.general-form.white .select2-container-multi .select2-choices,
.general-form.white .select2-container-multi.form-control .select2-choices {
  border: 1px solid rgba(7, 36, 81, 0.41) !important;
  background: #fff !important;
}
.general-form.white .select2-container-multi.form-control {
  border: none !important;
  background: transparent !important;
}
.vst-color {
color:#062451 !important;
}
.vst-color a{
color:#062451 !important;
}
table.dataTable.display tbody th,
table.dataTable.display tbody td {
border-top: 1px solid #f1f1f5;
background-color: #fff;
color: #072451;
}
.avatar-lgb {
width: 100px;
height: 100px;
}

/* Инициалы вместо аватарки: 70% от размера кружка */
.avatar-initials {
  background: #e8ecf0 !important;
  color: #c9ced4 !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  font-weight: 600;
  text-decoration: none;
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}
.avatar-initials img { display: none !important; }
.avatar-xxs.avatar-initials { font-size: 12.5px; }
.avatar-xs.avatar-initials { font-size: 15px; }
.avatar-sm.avatar-initials { font-size: 25px; }
.avatar-md.avatar-initials { font-size: 36px; }
.avatar-lgb.avatar-initials { font-size: 50px; }
.avatar-lg.avatar-initials { font-size: 67.5px; }
.avatar-3x.avatar-initials { font-size: 90px; }   /* 180 * 0.5 */
#help-page-content {
  padding: 1.25rem;
  box-sizing: border-box;
}
.card {
  margin-bottom: 20px;
  transition: all 0.4s;
}
body:not([data-color="F2F2F2"]) .card {
  border-radius:16px;
  border: 1px solid #f7f6fb;
  box-shadow: 0px 3px 4px 3px rgba(0, 0, 0, 0.08);
  -webkit-box-shadow: 0px 3px 4px 3px rgba(0, 0, 0, 0.08) !important;
}
.alert {
border: 0;
min-height:70px;
}
.app-alert {
  z-index:999999999 !important;
  width:350px;
  padding:30px;
  }
  .alert .progress {
    background-color: #ffffff38;
    box-shadow: none !important;
    height: 10px;
    width:110%;
    border:1px solid #fff;
    border-radius: 10px;
  }
#folder-context-menu{
position: fixed !important;
z-index: 9999;         
left: -9999px; top: -9999px; 
}
#folder-context-menu .dropdown-item i,
#folder-context-menu .dropdown-item svg { transition: stroke .15s ease, color .15s ease; }
#folder-context-menu .fm-cm-rename i,
#folder-context-menu .fm-cm-rename svg { color: #93b8e8; stroke: #93b8e8; }
#folder-context-menu .fm-cm-move i,
#folder-context-menu .fm-cm-move svg { color: #f4b88a; stroke: #f4b88a; }
#folder-context-menu .fm-cm-delete i,
#folder-context-menu .fm-cm-delete svg { color: #e8a0a0; stroke: #e8a0a0; }
#folder-context-menu .fm-cm-info i,
#folder-context-menu .fm-cm-info svg { color: #94a3b8; stroke: #94a3b8; }
#folder-context-menu .fm-cm-view i,
#folder-context-menu .fm-cm-view svg { color: #86c8a4; stroke: #86c8a4; }
#folder-context-menu .fm-cm-download i,
#folder-context-menu .fm-cm-download svg { color: #7dd3e8; stroke: #7dd3e8; }
#folder-context-menu .fm-cm-newfolder i,
#folder-context-menu .fm-cm-newfolder svg { color: #e8c88a; stroke: #e8c88a; }
#folder-context-menu .fm-cm-addfiles i,
#folder-context-menu .fm-cm-addfiles svg { color: #b8a8e0; stroke: #b8a8e0; }
#folder-context-menu .fm-cm-rename:hover i,
#folder-context-menu .fm-cm-rename:hover svg { color: #6b9ad8; stroke: #6b9ad8; }
#folder-context-menu .fm-cm-move:hover i,
#folder-context-menu .fm-cm-move:hover svg { color: #e8a060; stroke: #e8a060; }
#folder-context-menu .fm-cm-delete:hover i,
#folder-context-menu .fm-cm-delete:hover svg { color: #d87878; stroke: #d87878; }
#folder-context-menu .fm-cm-info:hover i,
#folder-context-menu .fm-cm-info:hover svg { color: #64748b; stroke: #64748b; }
#folder-context-menu .fm-cm-view:hover i,
#folder-context-menu .fm-cm-view:hover svg { color: #5cb87c; stroke: #5cb87c; }
#folder-context-menu .fm-cm-download:hover i,
#folder-context-menu .fm-cm-download:hover svg { color: #5bc0d8; stroke: #5bc0d8; }
#folder-context-menu .fm-cm-newfolder:hover i,
#folder-context-menu .fm-cm-newfolder:hover svg { color: #d4a84a; stroke: #d4a84a; }
#folder-context-menu .fm-cm-addfiles:hover i,
#folder-context-menu .fm-cm-addfiles:hover svg { color: #9888c8; stroke: #9888c8; }
.card .card-header {
padding: 12px 16px;
}
body:not([data-color="F2F2F2"]) .card .card-header {
background: #f7f6fb;
border-color: #ffffff;
border-top-left-radius: 15px !important;
border-top-right-radius: 15px !important;
}
.dashboard-icon-widget .card-body {
padding: 17px;
}
.color-tag {
display: inline-block;
width: 25px;
height: 25px;
border-radius:30px;
margin: 2px 10px 0 0;
transition: all 300ms ease;
-moz-transition: all 0.1s;
-webkit-transition: all 0.1s;
transition: all 0.1s;
}
.input-color {
width: 50px !important;
height: 25px !important;
padding: 0 !important;
border: none !important;
border-radius: 20px !important;
}
.input-color.active {
overflow: hidden;
border-radius: 20px !important;
}
.article-title-link {
font-size:16px;
font-weight:800;
}
body:not([data-color="F2F2F2"]) .filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  border: 1px solid #0b3d8b;
  border-radius: 15px;
  box-shadow: 0px 3px 4px 3px rgba(0, 0, 0, 0.08);
  -webkit-box-shadow: 0px 3px 4px 3px rgba(0, 0, 0, 0.08) !important;
  background: #092f6b11;
  padding: 10px 0px 10px 0px;
}

body[data-color="F2F2F2"] .filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 10px 0;
}
.col-md-1-8 {
  width: 11.7%;
  min-width: 100px;
}
.col-md-1-10 {
  width: 26%;
  min-width: 100px;
}

#advanced-filters {
  margin-top:20px !important ; 
margin-bottom:20px !important ; 
}

.mb5 {
  margin-bottom: 5px !important;
}

.filter-label {
  font-weight: 500;
  font-size: 13px;
  margin-bottom: 5px;
}
@media (max-width: 1200px) {
  .col-md-1-8 {
      width: 100%;
  }
}
#mounting-popup {
  position: fixed; 
  display: none;
  width: 300px;
  height: 300px;
  z-index: 9999;
  background: #fff;
  border: 1px solid #ccc;
  box-shadow: 0 4px 20px rgba(0,0,0,0.2);
  border-radius: 6px;
  pointer-events: none;
  padding: 5px;
}
#mounting-popup img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.kb-specs {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px;
  margin-top: 15px;
align-items: flex-end; 
}
.spec-block {
  flex: 1 1 calc(12.5% - 20px);
  min-width: 100px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
border:1px solid #cccccc;
border-radius:15px;
background:#ffffff;
}
.spec-icon-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 4px;
  width: 100%;
  height: 80px;
}
.spec-icon {
  width: 80%;
  max-height: 80px;
  object-fit: contain;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
}
.spec-icon img {
  padding-top:5px;
  max-width: 80%;
  max-height: 52px;
}
.spec-label {
  font-size: 13px;
  font-weight: normal;
  color: #000;
  text-transform:lowercase;
  margin-bottom: 2px;
}
.spec-value {
  font-size: 16px;
  color: #222;
font-weight: 800;
}
.float-start.p5 {
color:#fff;
}
.gas-match-item {
  padding: 10px;
}
.timeline-images iframe,
  .timeline-images img,
  .timeline-images video,
  .timeline-images audio,
  .file-preview-video video {
      max-height: 700px;
      width: 100%;
      border-radius:10px;
      object-fit: contain;
      display: block;
      margin: 0 auto;
  }
.gas-match-percent {
  color: #000000;
  margin-left: 5px;
  font-weight: 400;
}
.gas-match-diffs {
  margin-top: 5px;
  font-size: 90%;
  color: #777;
}
.gas-match-none {
  font-style: italic;
  color: #666;
}
.gas-match-error {
  color: #d9534f;
  font-weight: bold;
}
.row.gs-specs-row {
  display: flex;
  flex-wrap: nowrap;
  gap: 5px;
  margin-top: 20px;
  margin-bottom: 20px;
}
.p1 {
padding:20px;
}
h1, h2, h3 {
  margin: 0px 0;
}
.accordion-button:focus {
  z-index: 3;
  outline: 0;
  box-shadow: none;
} 
  .stage-block .accordion-button {
  position: relative;
}
.stage-block .accordion-button::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--stage-color, transparent);
  opacity: .15;
  pointer-events: none;
}
.stage-block .accordion-button:hover::before { opacity: .22; }
.stage-block.stage-highlight .accordion-button::before { opacity: .28; }
.accordion-header {
border-radius: 15px;
}
.article-grid > .col-20 { flex: 0 0 20%; max-width: 20%; }
.article-grid > .col-40 { flex: 0 0 40%; max-width: 40%; }
@media (max-width: 991.98px){
.article-grid > .col-20,
.article-grid > .col-40 { flex: 0 0 100%; max-width: 100%; }
}
/* .analogadd {
position:absolute;
top:25px;
right:30px;
max-width:400px !important;
} */
.col-md-1-7, .col-lg-1-7 {
  flex: 1 1 14.28%;
  min-width: 100px;
}
.gas-spring-link, .gas-match-title {
text-decoration:none !important;
text-transform:uppercase;
font-weight:700;
}
.gas-spring-link:before, .gas-match-item:before {
background:url('https://thistle.digital/apps/vstteam/writable/uploads/spmini.svg') no-repeat;
width:70px;
height:100%;
content:'';
position:absolute;
top:-5px;
color:transparent;
}
.gas-spring-body > ul > li {
margin-bottom:10px;
background:#cccccc22;
box-shadow: 0px 2px 3px 2px rgba(0, 0, 0, 0.08);
-webkit-box-shadow: 0px 2px 3px 2px rgba(0, 0, 0, 0.08) !important;
border-radius:15px !important;;
}
.gas-spring-spec {
transform:scale(0.95);
border:1px solid #cccccc;
border-radius:15px;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
min-height: 100px;
}

.search-container {
max-width: 600px;
margin: 0 auto;
}

.search-input {
height: 50px;
font-size: 16px;
border-radius: 8px;
border: 2px solid #e9ecef;
transition: border-color 0.3s ease;
}

.search-input:focus {
border-color: #092f6b;
box-shadow: none;
outline: none;
}
.gs-spec-block label {
  display: block;
  margin-bottom: 5px;
  font-weight: 800;
  font-size:10px;
color:#000;
text-align:center;
}
.gs-spec-block .select2.form-control {
  border-radius: 15px !important;
font-weight: 600;
  font-size:10px;
color:#092f6b;
}
.springimg img {
max-width:800px;
}
.springimg {
display: flex;
justify-content: center;
}
.sidebar-scroll,
#timeline .post-content .post-date span {
background: #062451;
}
.sidebar-menu li a {
color: #ffffff;
  text-decoration: none;
  position: relative;
  display: block;
  padding: 0.8rem 1.1rem;
  margin: 0 10px;
  border-radius: 15px;
  z-index: 2;
background-color: rgba(255, 255, 255, 0);
 transition:all 0.4s;
  align-items: center;
}
.sidebar-menu li a:active, .sidebar-menu li a:hover, .sidebar-menu li a:focus {
color: #ffffff !important;
transition:all 0.4s;
background-color: rgba(255, 255, 255, 0);
}
.sidebar-menu li a svg {
color: #abb0c0 !important;
}
.sidebar-menu > li.main[data-menu-key="projects"] > a svg {
color: #4a90d9 !important;
}
.sidebar-menu > li.main[data-menu-key="claims"] > a svg {
color: #ff4747 !important;
}
.sidebar-menu > li.main[data-menu-key="claim_applications"] > a svg {
color: #ff4747 !important;
}
.sidebar-menu > li.main[data-menu-key="retail_applications"] > a svg,
.sidebar-menu > li.main[data-menu-key="leads"] > a svg,
.sidebar-menu > li.main[data-menu-key="sales"] > a svg {
color: #d5223c !important;
}
.sidebar-menu > li.main[data-menu-key="colds"] > a svg {
color: #00fffb !important;
}
.sidebar-menu > li.main[data-menu-key="dealers"] > a svg {
color: #ff00ba !important;
}
.sidebar-menu li a:active svg, .sidebar-menu li a:hover svg, .sidebar-menu li a:focus svg {
color: #ffab00 !important;
}
.sidebar-menu > li.main[data-menu-key="projects"] > a:active svg,
.sidebar-menu > li.main[data-menu-key="projects"] > a:hover svg,
.sidebar-menu > li.main[data-menu-key="projects"] > a:focus svg {
color: #6ab0f5 !important;
}
.sidebar-menu > li.main[data-menu-key="claims"] > a:active svg,
.sidebar-menu > li.main[data-menu-key="claims"] > a:hover svg,
.sidebar-menu > li.main[data-menu-key="claims"] > a:focus svg {
color: #ff6a6a !important;
}
.sidebar-menu > li.main[data-menu-key="claim_applications"] > a:active svg,
.sidebar-menu > li.main[data-menu-key="claim_applications"] > a:hover svg,
.sidebar-menu > li.main[data-menu-key="claim_applications"] > a:focus svg {
color: #ff6a6a !important;
}
.sidebar-menu > li.main[data-menu-key="retail_applications"] > a:active svg,
.sidebar-menu > li.main[data-menu-key="retail_applications"] > a:hover svg,
.sidebar-menu > li.main[data-menu-key="retail_applications"] > a:focus svg,
.sidebar-menu > li.main[data-menu-key="leads"] > a:active svg,
.sidebar-menu > li.main[data-menu-key="leads"] > a:hover svg,
.sidebar-menu > li.main[data-menu-key="leads"] > a:focus svg,
.sidebar-menu > li.main[data-menu-key="sales"] > a:active svg,
.sidebar-menu > li.main[data-menu-key="sales"] > a:hover svg,
.sidebar-menu > li.main[data-menu-key="sales"] > a:focus svg {
color: #ef3f5a !important;
}
.sidebar-menu > li.main[data-menu-key="colds"] > a:active svg,
.sidebar-menu > li.main[data-menu-key="colds"] > a:hover svg,
.sidebar-menu > li.main[data-menu-key="colds"] > a:focus svg {
color: #66fffd !important;
}
.sidebar-menu > li.main[data-menu-key="dealers"] > a:active svg,
.sidebar-menu > li.main[data-menu-key="dealers"] > a:hover svg,
.sidebar-menu > li.main[data-menu-key="dealers"] > a:focus svg {
color: #ff66d1 !important;
}
.sidebar-menu li ul li a {
color: #ffffff;
font-size:12px;
font-weight:600;
 padding: 0.8rem 0rem;
border-bottom:1px solid #ffffff11;
border-radius:0;
margin-left:20px !important;
}
.sidebar-menu li ul li a svg {
display:none;
}
.sidebar-menu li ul li a:hover {
color: #ffffff;
border-left: 3px solid #ffab00;
}
.sidebar-menu li.active > a {
color: #ffffff !important;
background-color: rgba(255, 255, 255, 0.2);
}
.sidebar-toggled .sidebar-menu li:hover {
background-color: #062451;
}
/* Иконка свернутого меню (sidebar mini) — размер задаётся здесь */
.sidebar .brand-logo-mini img,
.brand-logo-mini img {
  max-width: 40px;
  max-height: 40px;
  width: auto;
  height: auto;
  object-fit: contain;
}

/* Кнопка «Скачать» в левом меню */
.sidebar-download-wrap {
  padding: 10px 12px;
  width: 100%;
  box-sizing: border-box;
}
.sidebar-download-btn {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 8px 14px;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 15px;
  color: #062451;
  font-weight: 700;
  text-decoration: none;
  font-size: 13px;
  transition: background 0.35s ease, color 0.35s ease, box-shadow 0.35s ease;
  box-sizing: border-box;
  box-shadow: 0px 0px 5px #06245138 inset;
}
@keyframes sidebar-download-gradient {
  0% { background-position: 0% 50%; }
  100% { background-position: 100% 50%; }
}
.sidebar-download-btn:hover {
  background: linear-gradient(90deg, #4a90d9, #d5223c, #4a90d9);
  background-size: 200% 100%;
  background-position: 0% 50%;
  animation: sidebar-download-gradient 2.5s ease infinite;
  color: #fff !important;
  box-shadow: 0px 0px 12px rgba(74, 144, 217, 0.4);
}
.sidebar-download-btn:hover .menu-text,
.sidebar-download-btn:hover .download-version {
  color: #fff !important;
}
.sidebar-download-btn:hover .sidebar-download-icon {
  filter: brightness(0) invert(1);
}
.sidebar-download-icon {
  width: 25px;
  height: 25px;
  margin-right: 10px;
  flex-shrink: 0;
  transition: filter 0.35s ease;
}
.sidebar-download-btn .menu-text {
  flex: 1;
  text-align: center;
  transition: color 0.35s ease;
}
.sidebar-download-btn .download-version {
  font-weight: 700;
  margin-left: 0px;
  color: #062451;
  transition: color 0.35s ease;
}
/* Свёрнутое меню: только иконка */
.sidebar-toggled .sidebar-download-wrap {
  padding: 10px 12px;
}
.sidebar-toggled .sidebar-download-btn {
  justify-content: center;
  padding: 15px 12px;
}
.sidebar-toggled .sidebar-download-wrap .menu-text,
.sidebar-toggled .sidebar-download-wrap .download-version {
  display: none !important;
}
.sidebar-toggled .sidebar-download-icon {
  margin-right: 0;
}

.nav-tabs li a:hover, .nav-tabs li a:focus, .nav-tabs li a:active {
color: #062451 !important;
}
.nav-tabs li .active, .nav-tabs li.active {
color: #062451 !important;
}

/* legacy ::after-подчёркивание отключено — chip-вкладки в vst-tabs.css */
.nav-tabs:not(.vertical):not(.chat-tab) li:not(.title-tab) a:not([data-bs-target="#lead-projects"]):not([data-bs-target="#lead-retail"]):not([data-bs-target="#lead-claims"])::after,
.nav-tabs:not(.vertical):not(.chat-tab) li a.active:not([data-bs-target="#lead-projects"]):not([data-bs-target="#lead-retail"]):not([data-bs-target="#lead-claims"])::after,
.nav-tabs:not(.vertical):not(.chat-tab) li:not(.title-tab) a:hover:not([data-bs-target="#lead-projects"]):not([data-bs-target="#lead-retail"]):not([data-bs-target="#lead-claims"])::after {
  display: none !important;
  content: none !important;
  width: 0 !important;
  height: 0 !important;
  transform: none !important;
  background: transparent !important;
}
.list-group-item.active {
background: #062451;
border-color: #062451;
}
.list-group-item.active:focus, .list-group-item.active:hover {
background: #062451;
border-color: #062451;
}
.btn-primary {
  background-color: #062451;
  border-color: #062451;
  }
  .btn-primary:hover, .btn-primary:active, .btn-primary:focus {
  background-color: #183c73 !important;
  border-color: #072451 !important;
  color: #ffffff;
  box-shadow:0px 0px 5px #072451 inset;
  }
.bg-success {
background-color: #4CAF50 !important;
}
a {
color: #08377f;
}
a:hover, a:focus, a:active {
color: #1055bd;
}
.circle-done {
color: #062451;
}
.bg-dark-success {
background: #2e4577;
}
.dataTable tbody tr.active td, .dataTable tbody tr.active:hover td {
background: #062451 !important;
}
td.dropdown-option button:hover {
background: #062451;
border-color: #062451;
}
.select2-results .select2-highlighted {
background-color: #062451;
}
.datepicker table tr td.active.active {
background: #062451;
border-color: #062451;
}
.datepicker table tr td.active.active:hover {
background: #062451;
border-color: #062451;
}
.datepicker table tr td span.active.active, .datepicker table tr td span.active:hover.active {
background: #062451;
border-color: #062451;
}
.datepicker table tr td span.active.disabled.active, .datepicker table tr td span.active.disabled:hover.active {
background: #062451;
border-color: #062451;
}
.datepicker table tr td span.active.active:hover {
background: #062451;
border-color: #062451;
}
.atwho-view .cur,
.note-hint-group .active,
.note-hint-item:hover {
background-color: #062451 !important;
}
.sidebar-scroll::-webkit-scrollbar-thumb {
background: rgba(255, 255, 255, 0.1);
}
.sidebar-scroll::-webkit-scrollbar-thumb:hover {
background: rgba(255, 255, 255, 0.2);
}
.sidebar-scroll::-webkit-scrollbar-thumb:active {
background: rgba(255, 255, 255, 0.2);
}
@media (min-width: 991px) {
.sidebar {
  background: #062451;
  border-top-right-radius:15px;
  border-bottom-right-radius:15px;
}
}
.sidebar-brand {
background-color: #06245100;
}
@media (max-width: 500px) {
.sidebar.sidebar-off {
  background-color: #062451;
}
.sidebar .sidebar-scroll {
  border-top-color: rgba(0, 0, 0, 0.0588235294) !important;
}
.sidebar #personal-language-icon,
.sidebar .sidebar-toggle-btn {
  color: #ffffff !important;
}
}
.form-check-input:checked {
background-color: #062451 !important;
border-color: #062451 !important;
}
/* Исключение: тумблер выбора сущности в объединённом виджете комментариев */
#unified-toggle-retail:checked {
  background-color: #d5223c !important;
  border-color: #d5223c !important;
}
body:not([data-color="F2F2F2"]) .select2-container-multi .select2-choices {
     border-radius: 15px !important;
}
body:not([data-color="F2F2F2"]) .select2-container .select2-choice,
body:not([data-color="F2F2F2"]) .select2-container .select2-choices,
body:not([data-color="F2F2F2"]) .select2-container .select2-choices .select2-search-field input {
    border-radius: 15px !important;
}
body:not([data-color="F2F2F2"]) .select2-dropdown-open.select2-drop-above [class^=select2-choice] {
 border-radius: 15px !important;
}
body:not([data-color="F2F2F2"]) .select2-results .select2-highlighted {
background-color: #062451;
border-radius:5px;
border-radius:15px;
}
body:not([data-color="F2F2F2"]) .select2-drop {
background:#f9f9f9;
border-radius: 0 0 15px 15px;
border: 1px solid var(--bs-border-color);
}
.rounded-0 {
  border-radius: 15px !important;
}
.kbn-wgt {
min-height: 600px !important;
}
body:not([data-color="F2F2F2"]) .select2-drop-active {
border-color: #f9f9f9;
border: 1px solid var(--bs-border-color);
}
body:not([data-color="F2F2F2"]) .select2-search input {
border-color: #f1f1f5;
}
.gas-spring-form-wrapper {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -15px;
}
.gas-spring-main-form {
  width: 80%;
  padding: 0 15px;
}
.gas-spring-sidebar {
  width: 20%;
  padding: 0 15px;
}
.gas-spring-main-form .card {
  border-radius: 15px;
  margin-bottom: 30px;
}
.gas-spring-main-form h1,
.gas-spring-main-form h2,
.gas-spring-main-form h3,
.gas-spring-sidebar h5 {
  font-weight: bold;
  margin-bottom: 15px;
}
.gs-form-block {
  margin-bottom: 20px;
}
.gs-form-block label {
  font-weight: 600;
  display: block;
  margin-bottom: 5px;
}
.gs-form-block .form-control {
  border-radius: 15px !important;
  width: 100%;
}
.gas-spring-analog-block {
  background: #ffffff;
  border: 1px solid #ddd;
  border-radius: 15px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
  margin-bottom: 20px;
}
.gas-spring-analog-block .card-header {
  background: #062451;
  color: #ffffff;
  background: #062451;
  border-bottom: 1px solid #ddd;
  padding: 12px 16px;
}
.gas-spring-analog-block .card-title {
  margin: 0;
  font-size: 16px;
}
.gas-spring-analog-list {
  padding-left: 0;
  list-style: none;
}
.gas-spring-analog-list li {
  padding: 10px 12px;
  border-bottom: 1px solid #eee;
  font-size: 14px;
  line-height: 1.4;
}
.gas-spring-analog-list li:last-child {
  border-bottom: none;
}
.gas-spring-main-form .btn {
  border-radius: 15px !important;
  margin-top: 10px;
}
@media screen and (max-width: 768px) {
  .gas-spring-main-form,
  .gas-spring-sidebar {
      width: 100%;
      padding: 0;
  }
}
.kanban-col-title {
  min-height: 80px;
  padding: 15px;
  font-weight: 600;
  color: #000000;
  margin-bottom: 5px;
  margin-right: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
body:not([data-color="F2F2F2"]) .kanban-col-title {
  background: #fff;
  border-radius: 15px;
}
#project-files-tabs {display:none;}
.vertical.settings.d-block {
background:#ffffff;
padding:20px;
border-radius:15px;
}
body:not([data-color="F2F2F2"]) .nav-tabs {
background: #fafafa;
box-shadow:0px 0px 3px #00000038;
border-radius: 15px;
}
.nav-tabs .nav-link {
border: none;
margin-bottom: 0 !important;
}
.nav-tabs:not(.vertical) li.active,
.nav-tabs:not(.vertical) li.nav-item.active,
.nav-tabs:not(.vertical) li.nav-item.show {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}
.nav-tabs:not(.vertical) li a {
padding: 20px;
margin-right: 0;
color: inherit;
line-height: 1.39;
}
.nav-tabs li a:not(.active):hover {
background: transparent;
border-color: transparent !important;
color: #4e5e6a;
}
/* legacy ::after-подчёркивание отключено — chip-вкладки в vst-tabs.css */
.nav-tabs:not(.vertical):not(.chat-tab) li:not(.title-tab) a:not([data-bs-target="#lead-projects"]):not([data-bs-target="#lead-retail"]):not([data-bs-target="#lead-claims"])::after,
.nav-tabs:not(.vertical):not(.chat-tab) li a.active:not([data-bs-target="#lead-projects"]):not([data-bs-target="#lead-retail"]):not([data-bs-target="#lead-claims"])::after,
.nav-tabs:not(.vertical):not(.chat-tab) li:not(.title-tab) a:hover:not([data-bs-target="#lead-projects"]):not([data-bs-target="#lead-retail"]):not([data-bs-target="#lead-claims"])::after {
  display: none !important;
  content: none !important;
  width: 0 !important;
  height: 0 !important;
  transform: none !important;
  background: transparent !important;
}
.nav-tabs:not(.vertical):not(.chat-tab) li .active,
.nav-tabs:not(.vertical):not(.chat-tab) li.active > a,
.nav-tabs:not(.vertical):not(.chat-tab) li a.active,
.nav-tabs:not(.vertical):not(.chat-tab) li .nav-link.active {
font-weight: bold;
cursor: pointer;
}
.nav-tabs li .active:focus, .nav-tabs li.active:focus {
outline: none;
}
.nav-tabs.title li a {
padding: 20px 15px;
}
.nav-tabs.title .title-button-group {
margin-top: 3px;
}
.nav-tabs.title .tab-title {
margin-left: auto;
}

.dropdown-toggle {
  border-color: #07245163 !important;
} 

.tab-title {
border-bottom: 1px solid #f1f1f5;
}
.tab-title h4 {
margin: 2px 0 0 0;
padding: 15px;
float: left;
}
.tab-title .title-button-group {
float: right;
margin: 0 10px 0;
}
.tab-title .btn {
margin: 0.75rem 0.4rem;
}
/* Шапка списков: кнопки как на /projects/all_projects */
.projects-page .title-button-group,
.clients-page .title-button-group,
.lead-projects-page .title-button-group,
.claims-page .title-button-group,
.tasks-page .title-button-group,
.events-page .page-title .title-button-group,
.items-page .page-title .title-button-group,
.orders-page .page-title .title-button-group,
.contracts-page .page-title .title-button-group,
.invoices-page .page-title .title-button-group,
.invoice-payments-page .page-title .title-button-group,
.announcements-page .page-title .title-button-group,
.attendance-page .page-title .title-button-group,
.leaves-page .page-title .title-button-group,
.team-members-list-page .page-title .title-button-group,
.team-members-page > .page-title .title-button-group,
.notes-grid-view .page-title .title-button-group,
.store-page .page-title .title-button-group {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
.projects-page .title-button-group .btn,
.clients-page .title-button-group .btn,
.lead-projects-page .title-button-group .btn,
.claims-page .title-button-group .btn,
.tasks-page .title-button-group .btn,
.tasks-page .page-title .title-button-group .btn,
.events-page .page-title .title-button-group .btn,
.items-page .page-title .title-button-group .btn,
.orders-page .page-title .title-button-group .btn,
.contracts-page .page-title .title-button-group .btn,
.invoices-page .page-title .title-button-group .btn,
.invoice-payments-page .page-title .title-button-group .btn,
.announcements-page .page-title .title-button-group .btn,
.attendance-page .page-title .title-button-group .btn,
.leaves-page .page-title .title-button-group .btn,
.team-members-list-page .page-title .title-button-group .btn,
.team-members-page > .page-title .title-button-group .btn,
.notes-grid-view .page-title .title-button-group .btn,
.store-page .page-title .title-button-group .btn {
  margin: 0 !important;
}

/* Страница проектов: filter-form, виджеты, переключатель панели */
.filter-form {
  max-width: 100%;
  overflow-x: auto;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}
.filter-form .filter-item-box {
  flex-shrink: 0;
}
.projects-overview-widgets-row {
  margin: 0 0 12px;
}
.project-widget-container {
  min-width: 0;
  padding: 0;
  margin-bottom: 0;
}
.project-widget-link {
  display: block;
  text-decoration: none;
  color: inherit;
}
.project-widget-link .dashboard-icon-widget {
  height: 100%;
}
.claims-overview-widgets-row {
  margin: 0 0 12px;
}
.claim-widget-container {
  min-width: 0;
  padding: 0;
  margin-bottom: 0;
}
.claim-status-widget-link {
  display: block;
  text-decoration: none;
  color: inherit;
}
.claim-status-widget-link .dashboard-icon-widget {
  height: 100%;
}
.lead-projects-overview-widgets-row {
  margin: 0 0 12px;
}
.lead-project-widget-container {
  min-width: 0;
  padding: 0;
  margin-bottom: 0;
}
.lead-project-widget-link {
  display: block;
  text-decoration: none;
  color: inherit;
}
.lead-project-widget-link .dashboard-icon-widget {
  height: 100%;
}
.projects-page #project-table tbody tr {
  cursor: pointer;
}
.projects-page .btn-add-project {
  background-color: #4a90d9 !important;
  border-color: #4a90d9 !important;
}
.projects-page .btn-add-project:hover,
.projects-page .btn-add-project:focus {
  background-color: #3a7bc8 !important;
  border-color: #3a7bc8 !important;
}
.projects-page,
.clients-page,
.lead-projects-page,
.claims-page,
.invoices-page {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
  padding-bottom: 0;
}
.projects-page .page-title ~ div:first-of-type,
.projects-page #projects-dashboard-panel {
  margin-bottom: 0;
}
.projects-page #projects-table-card {
  flex: 1 1 auto;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  transition: min-height 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
.projects-page #projects-table-card.collapsed {
  margin-bottom: 20px;
}
.projects-page #projects-table-card .dataTables_wrapper,
.projects-page #projects-table-card .table-wrapper-scroll-x {
  flex: 1 1 auto;
  min-height: 0;
}
/* Обёртка таблицы — колонка, чтобы контент (scrollBody) мог растягиваться */
.projects-page #projects-table-card .dataTables_wrapper {
  display: flex;
  flex-direction: column;
}
.projects-page #projects-table-card .dataTables_wrapper .dataTables_scrollBody {
  flex: 1 1 auto;
  min-height: 250px;
  transition: min-height 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
/* При свёрнутых виджетах/фильтрах — увеличиваем высоту именно контента таблицы (область с данными) */
.projects-page #projects-table-card.collapsed .dataTables_wrapper .dataTables_scrollBody {
  min-height: 220px;
  max-height: min(calc(100vh - 260px), 1100px);
}
.projects-dashboard-panel {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
.projects-dashboard-panel.collapsed {
  grid-template-rows: 0fr;
}
.projects-dashboard-panel-inner {
  overflow: hidden;
  min-height: 0;
}
#projects-table-card .filter-form {
  max-height: 200px;
  overflow: hidden;
  opacity: 1;
  transition: max-height 0.5s cubic-bezier(0.32, 0.72, 0, 1), opacity 0.4s cubic-bezier(0.32, 0.72, 0, 1);
}
#projects-table-card.collapsed .filter-form {
  max-height: 0;
  opacity: 0;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}
.projects-panel-toggle-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #f0f2f5;
  border: 1px solid #dee2e6;
  cursor: pointer;
  user-select: none;
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
  flex-shrink: 0;
}
.projects-panel-toggle-btn:hover {
  background: #e4e8ec;
  border-color: #4a90d9;
  transform: scale(1.05);
}
.projects-panel-toggle-btn.collapsed {
  background: #4a90d9;
  border-color: #3a7bc8;
  color: #fff;
}
.projects-panel-toggle-btn.collapsed:hover {
  background: #3a7bc8;
}
.projects-panel-toggle-btn i {
  width: 16px;
  height: 16px;
}

/* === Lead projects: та же логика сворачивания фильтров и расширения таблицы === */
.lead-projects-page #lead-projects-table-card {
  flex: 1 1 auto;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  transition: min-height 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
.lead-projects-page #lead-projects-table-card.collapsed {
  margin-bottom: 20px;
}
.lead-projects-page #lead-projects-table-card.vst-table-infinite-card.collapsed,
.clients-page #clients-table-card.vst-table-infinite-card.collapsed,
.claims-page #claims-table-card.vst-table-infinite-card.collapsed {
  margin-bottom: 0 !important;
}
.lead-projects-page #lead-projects-table-card .dataTables_wrapper,
.lead-projects-page #lead-projects-table-card .table-wrapper-scroll-x {
  flex: 1 1 auto;
  min-height: 0;
}
.lead-projects-page #lead-projects-table-card .dataTables_wrapper {
  display: flex;
  flex-direction: column;
}
.lead-projects-page #lead-projects-table-card .dataTables_wrapper .dataTables_scrollBody {
  flex: 1 1 auto;
  min-height: 250px;
  transition: min-height 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
.lead-projects-page #lead-projects-table-card.collapsed .dataTables_wrapper .dataTables_scrollBody {
  min-height: 220px;
  max-height: min(calc(100vh - 260px), 1100px);
}
#lead-projects-table-card .filter-form {
  max-height: 200px;
  overflow: hidden;
  opacity: 1;
  transition: max-height 0.5s cubic-bezier(0.32, 0.72, 0, 1), opacity 0.4s cubic-bezier(0.32, 0.72, 0, 1);
}
#lead-projects-table-card.collapsed .filter-form {
  max-height: 0;
  opacity: 0;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}
#lead-projects-table tbody tr {
  cursor: pointer;
}

/* === Рекламации: сворачивание виджетов и фильтров, расширение таблицы === */
.claims-page .page-title ~ div:first-of-type,
.claims-page #claims-dashboard-panel {
  margin-bottom: 0;
}
.claims-page #claims-table-card {
  flex: 1 1 auto;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  transition: min-height 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
.claims-page #claims-table-card.collapsed {
  margin-bottom: 20px;
}
.projects-page #projects-table-card.vst-table-infinite-card.collapsed {
  margin-bottom: 0 !important;
}
.claims-page #claims-table-card .dataTables_wrapper,
.claims-page #claims-table-card .table-wrapper-scroll-x {
  flex: 1 1 auto;
  min-height: 0;
}
.claims-page #claims-table-card .dataTables_wrapper {
  display: flex;
  flex-direction: column;
}
.claims-page #claims-table-card .dataTables_wrapper .dataTables_scrollBody {
  flex: 1 1 auto;
  min-height: 250px;
  transition: min-height 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
.claims-page #claims-table-card.collapsed .dataTables_wrapper .dataTables_scrollBody {
  min-height: 220px;
  max-height: min(calc(100vh - 260px), 1100px);
}
#claims-table-card .filter-form {
  max-height: 200px;
  overflow: hidden;
  opacity: 1;
  transition: max-height 0.5s cubic-bezier(0.32, 0.72, 0, 1), opacity 0.4s cubic-bezier(0.32, 0.72, 0, 1);
}
#claims-table-card.collapsed .filter-form {
  max-height: 0;
  opacity: 0;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}
.claims-page #claim-table tbody tr {
  cursor: pointer;
}
.claims-page .btn-add-claim,
.claims-page .vst-claims-mobile-fab,
.claims-page .vst-list-mobile-fab-fixed.btn-add-claim {
  background-color: #ef4444 !important;
  border-color: #ef4444 !important;
}
.claims-page .btn-add-claim:hover,
.claims-page .btn-add-claim:focus,
.claims-page .vst-claims-mobile-fab:hover,
.claims-page .vst-claims-mobile-fab:focus,
.claims-page .vst-list-mobile-fab-fixed.btn-add-claim:hover,
.claims-page .vst-list-mobile-fab-fixed.btn-add-claim:focus {
  filter: brightness(0.9);
}

/* === Клиенты: сворачивание виджетов и фильтров, расширение таблицы === */
.clients-page .clearfix.grid-button {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
}
.clients-page #clients-list {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
}
.clients-page #colds-list {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
}
.clients-page #clients-dashboard-panel {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
.clients-page #clients-dashboard-panel.collapsed {
  grid-template-rows: 0fr;
}
.invoices-page #invoices-dashboard-panel {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 0.5s cubic-bezier(0.32, 0.72, 0, 1);
  margin-bottom: 8px;
}
.invoices-page #invoices-dashboard-panel.collapsed {
  grid-template-rows: 0fr;
}
.invoices-dashboard-panel-inner {
  overflow: hidden;
  min-height: 0;
}
.invoices-page #invoices-table-card.collapsed .dataTables_wrapper .dataTables_scrollBody {
  min-height: 220px;
  max-height: min(calc(100vh - 260px), 1100px);
}
.invoice-widget-caption {
  display: block;
  white-space: nowrap;
}
.invoice-widget-meta {
  display: block;
  margin-top: 2px;
  font-size: 12px;
  line-height: 1.2;
  color: var(--vst-text-secondary, #6b7280);
  font-weight: 500;
}
.clients-dashboard-panel-inner {
  overflow: hidden;
  min-height: 0;
}
.lead-projects-page #lead-projects-dashboard-panel {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
.lead-projects-page #lead-projects-dashboard-panel.collapsed {
  grid-template-rows: 0fr;
}
.lead-projects-dashboard-panel-inner {
  overflow: hidden;
  min-height: 0;
}
.lead-projects-page .page-title ~ div:first-of-type,
.lead-projects-page #lead-projects-dashboard-panel {
  margin-bottom: 0;
}
.clients-page #clients-table-card {
  flex: 1 1 auto;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  transition: min-height 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
.clients-page #colds-table-card {
  flex: 1 1 auto;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  transition: min-height 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
.clients-page #clients-table-card.collapsed {
  margin-bottom: 20px;
}

/* Списочные таблицы (infinite): без лишнего зазора снизу, скрыть пустой footer DT */
.projects-page #projects-table-card.vst-table-infinite-card,
.clients-page #clients-table-card.vst-table-infinite-card,
.clients-page #colds-table-card.vst-table-infinite-card,
.lead-projects-page #lead-projects-table-card.vst-table-infinite-card,
.claims-page #claims-table-card.vst-table-infinite-card,
.tasks-page #tasks-table-card.vst-table-infinite-card,
.invoices-page #invoices-table-card.vst-table-infinite-card {
  flex: 1 1 auto;
  min-height: 0;
  margin-bottom: 0 !important;
}
.projects-page #projects-table-card.vst-table-infinite-card .dataTables_wrapper,
.clients-page #clients-table-card.vst-table-infinite-card .dataTables_wrapper,
.clients-page #colds-table-card.vst-table-infinite-card .dataTables_wrapper,
.lead-projects-page #lead-projects-table-card.vst-table-infinite-card .dataTables_wrapper,
.claims-page #claims-table-card.vst-table-infinite-card .dataTables_wrapper,
.tasks-page #tasks-table-card.vst-table-infinite-card .dataTables_wrapper,
.invoices-page #invoices-table-card.vst-table-infinite-card .dataTables_wrapper {
  flex: 1 1 auto;
  min-height: 0;
}
.projects-page #projects-table-card.vst-table-infinite-card .dataTables_scrollBody,
.clients-page #clients-table-card.vst-table-infinite-card .dataTables_scrollBody,
.clients-page #colds-table-card.vst-table-infinite-card .dataTables_scrollBody,
.lead-projects-page #lead-projects-table-card.vst-table-infinite-card .dataTables_scrollBody,
.claims-page #claims-table-card.vst-table-infinite-card .dataTables_scrollBody,
.tasks-page #tasks-table-card.vst-table-infinite-card .dataTables_scrollBody {
  flex: 1 1 auto;
  min-height: 220px;
}
.invoices-page #invoices-table-card.vst-table-infinite-card .dataTables_scrollBody {
  flex: 0 0 auto;
  min-height: 220px;
  max-height: none !important;
}
.projects-page #projects-table-card.vst-table-infinite-card .vst-table-infinite-mode .datatable-tools,
.clients-page #clients-table-card.vst-table-infinite-card .vst-table-infinite-mode .datatable-tools,
.clients-page #colds-table-card.vst-table-infinite-card .vst-table-infinite-mode .datatable-tools,
.lead-projects-page #lead-projects-table-card.vst-table-infinite-card .vst-table-infinite-mode .datatable-tools,
.claims-page #claims-table-card.vst-table-infinite-card .vst-table-infinite-mode .datatable-tools,
.tasks-page #tasks-table-card.vst-table-infinite-card .vst-table-infinite-mode .datatable-tools,
.invoices-page #invoices-table-card.vst-table-infinite-card .vst-table-infinite-mode .datatable-tools {
  display: none !important;
  min-height: 0;
  margin: 0;
  padding: 0;
}
.clients-page #clients-table-card .dataTables_wrapper,
.clients-page #clients-table-card .table-responsive,
.clients-page #colds-table-card .dataTables_wrapper,
.clients-page #colds-table-card .table-responsive {
  flex: 1 1 auto;
  min-height: 0;
}
.clients-page #clients-table-card .dataTables_wrapper,
.clients-page #colds-table-card .dataTables_wrapper {
  display: flex;
  flex-direction: column;
}
.clients-page #clients-table-card .dataTables_wrapper .dataTables_scrollBody,
.clients-page #colds-table-card .dataTables_wrapper .dataTables_scrollBody {
  flex: 1 1 auto;
  min-height: 250px;
  transition: min-height 0.5s cubic-bezier(0.32, 0.72, 0, 1);
}
.clients-page #clients-table-card.collapsed .dataTables_wrapper .dataTables_scrollBody {
  min-height: 220px;
  max-height: min(calc(100vh - 260px), 1100px);
}
.invoices-page #invoices-table-card {
  flex: 1 1 auto;
  min-height: 320px;
  display: flex;
  flex-direction: column;
}
.invoices-page #invoices-table-card .tab-content {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
}
.invoices-page #invoices-table-card .tab-pane.active,
.invoices-page #invoices-table-card .tab-pane.show {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
}
.invoices-page #invoices-table-card .dataTables_wrapper,
.invoices-page #invoices-table-card .table-responsive {
  flex: 1 1 auto;
  min-height: 0;
}
.invoices-page #invoices-table-card .dataTables_wrapper {
  display: flex;
  flex-direction: column;
}
.invoices-page #invoices-table-card .dataTables_wrapper .dataTables_scrollBody {
  flex: 1 1 auto;
  min-height: 250px;
  max-height: min(calc(100vh - 260px), 1100px);
  overflow-y: auto !important;
  scrollbar-width: none;
}
.invoices-page #invoices-table-card .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar {
  display: none;
}
#clients-table-card .filter-form {
  max-height: 200px;
  overflow: hidden;
  opacity: 1;
  transition: max-height 0.5s cubic-bezier(0.32, 0.72, 0, 1), opacity 0.4s cubic-bezier(0.32, 0.72, 0, 1);
}
#clients-table-card.collapsed .filter-form {
  max-height: 0;
  opacity: 0;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

.nav li,
.nav li a {
position: relative;
display: block;
}
.nav .title-tab h4 {
margin-top: 10px;
margin-bottom: 10px;
font-size: 18px;
}
.redi {
color:red;
}
#profile-image-section h4,
#profile-image-section .profile-hero__name {
  color: #fff;
  font-size: 35px;
}

/* Аватарка профиля: hero-блок и кнопка загрузки */
#profile-image-section .profile-hero {
  display: flex;
  gap: 16px;
  margin-bottom: 12px;
}

#profile-image-section .profile-hero--side {
  flex-direction: row;
  align-items: center;
}

#profile-image-section .profile-hero--stacked {
  flex-direction: column;
  align-items: center;
  text-align: center;
}

#profile-image-section .profile-hero__avatar-col {
  flex-shrink: 0;
}

#profile-image-section .profile-hero__avatar-wrap {
  position: relative;
  width: 200px;
  height: 200px;
}

#profile-image-section .profile-hero__avatar {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 8px;
  position: relative;
}

#profile-image-section .profile-hero__avatar-img,
#profile-image-section .profile-hero__avatar-initials {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

#profile-image-section .profile-hero__avatar-initials {
  display: flex;
  align-items: center;
  justify-content: center;
}

#profile-image-section .profile-hero__meta {
  flex: 1 1 auto;
  min-width: 0;
}

#profile-image-section .profile-hero--stacked .profile-hero__meta {
  width: 100%;
}

#profile-image-section .profile-hero__title-badge {
  font-weight: 500;
  text-align: left;
}

#profile-image-section .profile-hero--stacked .profile-hero__title-badge {
  text-align: center;
}

#profile-image-section .job-title-line-1,
#profile-image-section .job-title-line-2 {
  display: block;
  font-weight: 400;
}

#profile-image-section .job-title-line-2 {
  margin-top: 2px;
}

#profile-image-section .profile-hero__stats {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
}

#profile-image-section .profile-hero--stacked .profile-hero__stats {
  justify-content: center;
}

#profile-image-section .profile-stat-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.14);
  border: 1px solid rgba(255, 255, 255, 0.28);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}

#profile-image-section .profile-stat-badge__icon {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  object-fit: contain;
}

#profile-image-section .profile-stat-badge__value {
  font-variant-numeric: tabular-nums;
}

#profile-image-section .profile-image-buttons {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 12;
  margin: 0;
  padding: 0;
}

#profile-image-section .profile-image-buttons .profile-image-direct-upload,
#profile-image-section .profile-image-buttons.file-upload {
  position: static !important;
  margin: 0 !important;
  top: auto !important;
  left: auto !important;
}

#profile-image-section .profile-image-upload-btn {
  width: 32px;
  height: 32px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
}
/* Стили для виджета подразделений клиентов */
/* Модал подразделений — всегда поверх бекдропа */
.modal.client-dept-modal { z-index: 2005 !important; }
.modal-backdrop.client-dept-backdrop { z-index: 2000 !important; }

/* Стили для виджета подразделений */
#client-departments-card {
    border-radius: 15px;
    border: 1px solid #eaebec;
    box-shadow: 0px 0px 3px #00000038;
}

#client-departments-card .card-header {
    background: #fafafa;
    border-bottom: 1px solid #eaebec;
    border-radius: 15px 15px 0 0;
    padding: 15px 20px;
}

#client-departments-card .card-header h4 {
    font-size: 18px;
    font-weight: 600;
    color: #072451;
    margin: 0;
}

#client-departments-card .card-body {
    padding: 0;
}

#departments-list .list-group-item {
    border: none;
    border-bottom: 1px solid #f1f1f5;
    padding: 15px 20px;
    transition: background-color 0.2s;
}

#departments-list .list-group-item:last-child {
    border-bottom: none;
    border-radius: 0 0 15px 15px;
}

#departments-list .list-group-item:hover {
    background-color: #f8f9fa;
}

#departments-skeleton {
    padding: 20px;
    text-align: center;
    color: #6c757d;
}

#departments-skeleton .spin {
    animation: spin 1s linear infinite;
}

@keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}
.modal-footer {
  border-bottom-right-radius:15px !important;
  border-bottom-left-radius: 15px !important;
}
#icon-picker {
background:#ccc;
}
.avatar-lg {
width: 225px;
height: 225px;
}
.avatar-lg img {
width: 225px;
height: 225px;
}
.kanban-container {
margin-top: 0;
margin-bottom: 0;
padding: 10px;
min-height:700px;
}
body:not([data-color="F2F2F2"]) .kanban-container {
background: #ffffff;
border: 1px solid #ffffff;
border-radius: 20px !important;
border-top: none;
}
body:not([data-color="F2F2F2"]) #kanban-wrapper {
border-radius: 20px !important;

}
.kanban-item {
padding: 10px;
margin: 0 3px 10px 0;
background-color: #0724510f;
cursor: grab;
display: table;
color: #000;
width: 100%;
border:1px solid #3b507457;
border-radius: 15px;
}
.kanban-item.kanban-item--has-priority {
  padding: 0;
  overflow: hidden;
  display: flex !important;
  flex-direction: column;
}
.kanban-item.kanban-item--has-priority .kanban-card-body {
  padding: 10px 10px 8px;
  flex: 1 1 auto;
}
.kanban-item .kanban-card-title {
  font-size: 0.6875rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.045em;
  line-height: 1.25;
}
.kanban-priority-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 7px 10px;
  margin-top: auto;
  background: var(--kanban-priority-color, #6c757d);
  color: #fff;
  font-size: 0.625rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  line-height: 1;
  border-radius: 0 0 14px 14px;
}
.kanban-priority-footer svg,
.kanban-priority-footer .icon-14 {
  color: #fff !important;
  stroke: #fff !important;
  flex-shrink: 0;
}
.kanban-priority-footer__text {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
.kanban-dates-stacked {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.kanban-dates-stacked .kanban-date-row,
.kanban-dates-stacked .kanban-days-until {
  margin-bottom: 0 !important;
}
.kanban-dates-stacked .kanban-date-row .kanban-date-value {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.25;
}
.kanban-dates-stacked .kanban-date-icon-start {
  color: #16a34a !important;
  stroke: #16a34a !important;
}
.kanban-dates-stacked .kanban-date-icon-deadline {
  color: #e11d48 !important;
  stroke: #e11d48 !important;
}
.kanban-dates-stacked .kanban-days-until {
  font-size: 0.75rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  line-height: 1.35;
  padding: 1px 0;
  text-align: left;
  color: var(--bs-secondary, #6c757d);
}
.btn-group {
  border-radius: 10px;
}
.btn-group-sm>.btn, .btn-sm {
  --bs-btn-padding-y: 0.25rem;
  --bs-btn-padding-x: 0.5rem;
  --bs-btn-font-size: 0.875rem;
  --bs-btn-border-radius: 10px;
}
#actual_address, #legal_address, #postal_address {
  height: 100px;
}
.timeline-images > * {
max-width:400px;
}
/* .claims-list-section .card, #contacts .card, #clients_list .card, .all-tasks-kanban-view .card, #task-table-container .card, .margin-0-m, .tab-pane .card {
margin-top:20px;
}   */
body:not([data-color="F2F2F2"]) #js-kanban-filter-container {
border-radius: 15px !important;
}
:root {
  --bs-border-radius: 15px;
  /* Цвета системы #072451 вместо Bootstrap blue */
  --bs-primary: #072451;
  --bs-primary-rgb: 7, 36, 81;
  --bs-link-color: #072451;
  --bs-link-color-rgb: 7, 36, 81;
  --bs-link-hover-color: #051a38;
  --bs-link-hover-color-rgb: 5, 26, 56;
  --bs-nav-link-color: #072451;
  --bs-nav-link-hover-color: #051a38;
  --bs-focus-ring-color: rgba(7, 36, 81, 0.25);
}
.clickable-preview {
  cursor: pointer;
}
.request-text-wrapper {
  max-height: 400px;
  max-width: 100%;
  overflow: auto;
  border: 1px solid #ddd;
  padding: 10px;
  border-radius: 6px;
  background-color: #f9f9f9;
}
.request-text-wrapper * {
  max-width: 100% !important;
  height: auto !important;
  box-sizing: border-box;
  word-break: break-word;
}
.request-text-wrapper img {
  max-width: 100% !important;
  height: auto !important;
  display: block;
  margin: 10px auto;
}
.widget-m {
height:101px;
}
.extra-small {
font-size: 9px;
}
.w-95 {width: 80%;}
.btn-default:active, .btn-default:focus {
  border-color: #072451 !important;
  background-color: #072451 !important;
  color: #ffffff !important;
}
.btn-group .btn.active {
  border-color: #072451 !important;
  background-color: #072451 !important;
  color: #ffffff !important;
}
.general-form .form-control:focus, .general-form .form-control.white:focus {
  border-color: #f0f0f0;
  background-color: #f0f0f0;
  border:1px solid #062451 !important;
  box-shadow: none;
}
.general-form.white .form-control {
  border-color: #072451;
  background-color: #f6f6f6;
}
.app-filter-dropdown select,
  .app-filter-dropdown .select2-container {
      width: 260px !important;
  }
  .app-filter-item {
      margin-right: 20px;
  }
  .app-filter-section {
      padding: 20px 25px;
      border-bottom: 1px solid #ddd;
      background-color: #fafafa;
  }
  .sidebar-menu .badge {
float: right;
margin-top: 2px !important;
padding: 3px 6px;
background: red !important;
}
@keyframes vst-hasmsg-pulse {
0%   { transform: scale(1);   box-shadow: 0 0 0 rgba(245, 50, 92, 0); }
40%  { transform: scale(1.12);box-shadow: 0 0 30px rgba(245, 50, 92, .9); }
100% { transform: scale(1);   box-shadow: 0 0 0 rgba(245, 50, 92, 0); }
}
.init-chat-icon.has-message {
background-color: #f5325c;
color: #fff;
animation: vst-hasmsg-pulse 1.4s ease-in-out infinite;
}
/* Call button styles */
.init-call-icon {
width: 50px;
height: 50px;
background-color: #fff;
z-index: 10;
position: fixed;
bottom: 20px;
right: 90px;
box-shadow: 0px 3px 4px 4px rgba(0, 0, 0, 0.1);
border-radius: 50%;
text-align: center;
padding: 0;
cursor: pointer;
transition: transform 0.2s ease, box-shadow 0.2s ease;
display: flex;
align-items: center;
justify-content: center;
}
.init-call-icon:hover {
transform: scale(1.05);
box-shadow: 0px 4px 6px 4px rgba(0, 0, 0, 0.15);
}
.call-min-icon {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 100%;
margin-top: 5px;
margin-left: -1px;
}
.init-call-icon i {
width: 20px;
height: 20px;
display: block;
line-height: 1;
margin: 0 auto;
transform: translateY(2px);
}
/* Call users popup */
.call-users-popup {
position: fixed;
z-index: 2500;
background: transparent;
max-width: 500px;
overflow: visible;
display: flex;
flex-direction: row;
}
.call-users-popup.hide {
display: none;
}
.call-users-list {
display: flex;
flex-direction: row;
padding: 10px;
margin-top: 10px;
position: relative;
top:10px;
flex-wrap: nowrap;
gap: 12px;
justify-content: flex-start;
align-items: center;
overflow-x: auto;
overflow-y: hidden;
scrollbar-width: thin;
scrollbar-color: rgba(0, 0, 0, 0.2) transparent;
}
.call-users-list::-webkit-scrollbar {
height: 6px;
}
.call-users-list::-webkit-scrollbar-track {
background: transparent;
}
.call-users-list::-webkit-scrollbar-thumb {
background: rgba(0, 0, 0, 0.2);
border-radius: 3px;
}
.call-users-list::-webkit-scrollbar-thumb:hover {
background: rgba(0, 0, 0, 0.3);
}
.call-user-item {
display: flex;
flex-shrink: 0;
opacity: 0;
transform: translateX(50px);
transition: opacity 0.3s ease, transform 0.3s ease;
}
.call-user-item.show {
opacity: 1;
transform: translateX(0);
}
.call-user-avatar {
position: relative;
width: 50px;
height: 50px;
border-radius: 50%;
overflow: hidden;
cursor: pointer;
transition: transform 0.2s ease;
border: 2px solid transparent;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}
.call-user-avatar:hover {
transform: scale(1.1);
}
.call-user-avatar.call-user-online {
border: 2px solid #42b72a;
box-shadow: 0 0 0 2px rgba(66, 183, 42, 0.2);
}
.call-user-avatar img {
width: 100%;
height: 100%;
object-fit: cover;
}
.call-click-animation {
animation: call-click-scale 0.3s ease;
}
@keyframes call-click-scale {
0% { transform: scale(1); }
50% { transform: scale(1.2); }
100% { transform: scale(1); }
}
.call-no-users {
padding: 10px;
text-align: center;
color: #999;
}
/* Call notification */
.call-notification {
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
z-index: 5000;
pointer-events: none;
}
.form-signin {
  width: 100%;
  max-width: 500px;
  margin: 15% auto;
}

body.public-view.signin-page .scrollable-page {
  min-height: 100vh;
  display: flex;
  align-items: center;
}

body.public-view.signin-page .form-signin {
  max-width: 460px;
  margin: 0 auto;
}

/* Страница входа: компактнее шапка и логотип */
body.public-view.signin-page .form-signin .card .card-header {
  background: #072451 !important;
}

body.public-view.signin-page .form-signin .card .card-header img {
  max-width: 450px;
  width: 100%;
  height: auto;
}

body.public-view.signin-page .form-signin .card {
  border: none !important;
}

.signin-input-icon-wrap {
  position: relative;
}

.signin-input-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #7b8794;
  pointer-events: none;
  z-index: 2;
}

.signin-input-icon svg {
  width: 18px;
  height: 18px;
  stroke: currentColor;
}

.signin-input-icon-wrap .signin-input-with-icon {
  padding-left: 44px !important;
  height: 52px;
}

.signin-password-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 0;
}

.signin-password-row__field {
  flex: 1 1 auto;
  min-width: 0;
}

.signin-password-row__field .form-control {
  height: 52px;
}

.signin-password-row__submit,
body.public-view.signin-page .signin-password-row__submit,
body.public-view.signin-page .signin-password-row__submit.btn,
body.public-view.signin-page .signin-password-row__submit.btn-primary {
  flex: 0 0 auto;
  width: 52px;
  height: 52px;
  min-width: 52px;
  max-width: 52px;
  min-height: 52px;
  max-height: 52px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50% !important;
  border: none !important;
  background: #072451 !important;
  box-shadow: 0 4px 14px rgba(7, 36, 81, 0.28);
  transition: background-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
  line-height: 1 !important;
  aspect-ratio: 1 / 1;
}

.signin-password-row__submit:hover,
.signin-password-row__submit:focus {
  background: #183c73 !important;
  transform: translateX(1px);
  box-shadow: 0 6px 18px rgba(7, 36, 81, 0.34);
}

body.public-view.signin-page .signin-password-row__submit.btn:hover,
body.public-view.signin-page .signin-password-row__submit.btn:focus,
body.public-view.signin-page .signin-password-row__submit.btn:active,
body.public-view.signin-page .signin-password-row__submit.btn-primary:hover,
body.public-view.signin-page .signin-password-row__submit.btn-primary:focus,
body.public-view.signin-page .signin-password-row__submit.btn-primary:active {
  border-radius: 50% !important;
}

.signin-password-row__submit svg {
  width: 23px;
  height: 23px;
  stroke: #fff;
  transform: translateY(2px);
}

/* Плашка на странице входа: есть активные объявления (по датам, без share_with) */
.signin-update-cache-badge {
  display: block;
  width: 100%;
  padding: 12px 14px;
  background: #dc3545;
  color: #fff;
  border-radius: 10px;
  text-align: center;
  font-size: 14px;
  line-height: 1.35;
  box-shadow: 0 4px 14px rgba(220, 53, 69, 0.5);
}
.signin-update-cache-badge__title {
  display: block;
  font-weight: 700;
  font-size: 15px;
  line-height: 1.25;
}
.signin-update-cache-badge__hint {
  display: block;
  margin-top: 8px;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.15;
  opacity: 0.92;
}
.call-notification.hide {
display: none;
}
.call-notification-window {
background: #fff;
border-radius: 20px;
padding: 40px 50px;
box-shadow: 0px 10px 40px rgba(0, 0, 0, 0.3);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
min-width: 400px;
text-align: center;
}
.call-notification-emoji {
font-size: 120px;
line-height: 1;
animation: wave-hand 1s ease-in-out infinite;
display: block;
}
@keyframes wave-hand {
0%, 100% { transform: rotate(0deg); }
25% { transform: rotate(-20deg); }
75% { transform: rotate(20deg); }
}
.call-notification-text {
font-size: 28px;
font-weight: bold;
margin: 20px 0 0 0;
color: #333;
line-height: 1.4;
}
.call-notification-name {
color: #2563eb;
}
/* Mobile styles */
@media screen and (max-width: 767px) {
.init-call-icon {
right: auto;
bottom: auto;
position: static;
width: 40px;
height: 40px;
}
.call-users-popup {
right: 10px;
bottom: 60px;
max-width: calc(100vw - 20px);
}
}
.shake {
  animation: shake 0.3s;
}
#project-table th,
#project-table td,
.projects-page #project-table_wrapper .dataTables_scrollHead th,
.projects-page #project-table_wrapper .dataTables_scrollBody td {
  white-space: normal !important;
  word-break: break-word !important;
}
#project-table th.col-id,
#project-table td.col-id,
.projects-page #project-table_wrapper .dataTables_scrollHead th.col-id,
.projects-page #project-table_wrapper .dataTables_scrollBody td.col-id,
#project-table_wrapper .dataTables_scrollHead th.col-id,
#project-table_wrapper .dataTables_scrollBody td.col-id,
#lead-projects #project-table_wrapper .dataTables_scrollHead th.col-id,
#lead-projects #project-table_wrapper .dataTables_scrollBody td.col-id {
  white-space: nowrap !important;
  word-break: normal !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}
#project-table th.col-client,
#project-table td.col-client,
.projects-page #project-table_wrapper .dataTables_scrollHead th.col-client,
.projects-page #project-table_wrapper .dataTables_scrollBody td.col-client {
  min-width: 200px !important;
  max-width: 200px !important;
}
#project-table th.col-title,
#project-table td.col-title,
.projects-page #project-table_wrapper .dataTables_scrollHead th.col-title,
.projects-page #project-table_wrapper .dataTables_scrollBody td.col-title {
  min-width: 250px !important;
  max-width: 250px !important;
}
#project-table th.col-region,
#project-table td.col-region,
.projects-page #project-table_wrapper .dataTables_scrollHead th.col-region,
.projects-page #project-table_wrapper .dataTables_scrollBody td.col-region {
  min-width: 150px !important;
  max-width: 150px !important;
}
#project-table th.col-segment,
#project-table td.col-segment,
#project-table th.col-spring,
#project-table td.col-spring,
#project-table th.col-business,
#project-table td.col-business,
#project-table th.col-priority,
#project-table td.col-priority,
.projects-page #project-table_wrapper .dataTables_scrollHead th.col-segment,
.projects-page #project-table_wrapper .dataTables_scrollBody td.col-segment,
.projects-page #project-table_wrapper .dataTables_scrollHead th.col-spring,
.projects-page #project-table_wrapper .dataTables_scrollBody td.col-spring,
.projects-page #project-table_wrapper .dataTables_scrollHead th.col-business,
.projects-page #project-table_wrapper .dataTables_scrollBody td.col-business,
.projects-page #project-table_wrapper .dataTables_scrollHead th.col-priority,
.projects-page #project-table_wrapper .dataTables_scrollBody td.col-priority,
#project-table_wrapper .dataTables_scrollHead th.col-segment,
#project-table_wrapper .dataTables_scrollBody td.col-segment,
#project-table_wrapper .dataTables_scrollHead th.col-spring,
#project-table_wrapper .dataTables_scrollBody td.col-spring,
#project-table_wrapper .dataTables_scrollHead th.col-business,
#project-table_wrapper .dataTables_scrollBody td.col-business,
#project-table_wrapper .dataTables_scrollHead th.col-priority,
#project-table_wrapper .dataTables_scrollBody td.col-priority {
  white-space: nowrap !important;
  word-break: normal !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* Toggle-eye: режимы колонок через data-vst-col-* на wrapper */
#project-table_wrapper .dataTables_scrollHead th.col-segment,
#project-table_wrapper .dataTables_scrollHead th.col-spring,
#project-table_wrapper .dataTables_scrollHead th.col-business,
#project-table_wrapper .dataTables_scrollHead th.col-priority,
#lead-projects #project-table_wrapper .dataTables_scrollHead th.col-segment,
#lead-projects #project-table_wrapper .dataTables_scrollHead th.col-spring,
#lead-projects #project-table_wrapper .dataTables_scrollHead th.col-business,
#lead-projects #project-table_wrapper .dataTables_scrollHead th.col-priority {
  vertical-align: middle !important;
  line-height: 1.2 !important;
  padding-top: 9px !important;
  padding-bottom: 9px !important;
  overflow: visible !important;
}

#project-table_wrapper .col-head-nowrap,
#lead-projects #project-table_wrapper .col-head-nowrap {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 7px;
  line-height: 1;
  vertical-align: middle;
  white-space: nowrap !important;
  flex-wrap: nowrap;
  overflow: visible;
  max-width: none;
  min-height: 20px;
}

#project-table_wrapper .col-head-label,
#lead-projects #project-table_wrapper .col-head-label {
  display: inline-block;
  line-height: 1.25;
  font-weight: 600;
  letter-spacing: -0.01em;
  flex: 0 1 auto;
}

#project-table_wrapper th .toggle-eye,
#lead-projects #project-table_wrapper th .toggle-eye {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  flex-shrink: 0;
  height: 20px;
  min-width: 20px;
  padding: 0 5px;
  margin: 0;
  border-radius: 5px;
  line-height: 1;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.65) inset, 0 1px 2px rgba(0, 0, 0, 0.05);
  transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, transform 0.1s ease;
  overflow: visible;
}

#project-table_wrapper th .toggle-eye:hover,
#lead-projects #project-table_wrapper th .toggle-eye:hover {
  background: rgba(255, 255, 255, 0.95);
  border-color: rgba(0, 0, 0, 0.16);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.85) inset, 0 2px 4px rgba(0, 0, 0, 0.08);
}

#project-table_wrapper th .toggle-eye:active,
#lead-projects #project-table_wrapper th .toggle-eye:active {
  transform: translateY(0.5px);
  box-shadow: 0 0 0 transparent;
}

#project-table_wrapper th .toggle-eye:focus-visible,
#lead-projects #project-table_wrapper th .toggle-eye:focus-visible {
  outline: 2px solid rgba(0, 0, 0, 0.22);
  outline-offset: 1px;
}

#project-table_wrapper th .toggle-eye .toggle-mode-icons,
#lead-projects #project-table_wrapper th .toggle-eye .toggle-mode-icons {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  height: 14px;
  line-height: 1;
  pointer-events: none;
}

#project-table_wrapper th .toggle-eye svg,
#lead-projects #project-table_wrapper th .toggle-eye svg {
  display: block;
  width: 12px !important;
  height: 12px !important;
  flex-shrink: 0;
  opacity: 0.72;
  pointer-events: none;
  stroke-width: 2.25;
}

#project-table_wrapper th .toggle-eye:hover svg,
#lead-projects #project-table_wrapper th .toggle-eye:hover svg {
  opacity: 0.95;
}

#project-table_wrapper th .toggle-mode-icons svg + svg,
#lead-projects #project-table_wrapper th .toggle-mode-icons svg + svg {
  margin-left: 1px;
}

#project-table_wrapper td.col-segment .segment-cell-content,
#lead-projects #project-table_wrapper td.col-segment .segment-cell-content {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
  justify-content: flex-start;
}

#project-table_wrapper td.col-segment .seg-icon,
#lead-projects #project-table_wrapper td.col-segment .seg-icon {
  flex: 0 0 auto;
  margin-right: 0 !important;
}

#project-table_wrapper td.col-business .biz-icon,
#lead-projects #project-table_wrapper td.col-business .biz-icon {
  display: inline-flex;
  background-color: #f0f0f0;
  border-radius: 50%;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

#project-table_wrapper td.col-segment .seg-title,
#project-table_wrapper td.col-spring .spring-title,
#project-table_wrapper td.col-business .biz-title,
#project-table_wrapper td.col-priority .priority-text,
#project-table_wrapper td.col-priority .priority-num,
#lead-projects #project-table_wrapper td.col-segment .seg-title,
#lead-projects #project-table_wrapper td.col-spring .spring-title,
#lead-projects #project-table_wrapper td.col-business .biz-title,
#lead-projects #project-table_wrapper td.col-priority .priority-text,
#lead-projects #project-table_wrapper td.col-priority .priority-num {
  white-space: nowrap !important;
  overflow: visible !important;
}

/* segment: 0 = icon+text, 1 = icon, 2 = text */
#project-table_wrapper[data-vst-col-segment="1"] td.col-segment .seg-title,
#lead-projects #project-table_wrapper[data-vst-col-segment="1"] td.col-segment .seg-title {
  display: none !important;
}
#project-table_wrapper[data-vst-col-segment="2"] td.col-segment .seg-icon,
#lead-projects #project-table_wrapper[data-vst-col-segment="2"] td.col-segment .seg-icon {
  display: none !important;
}
#project-table_wrapper[data-vst-col-segment="1"] td.col-segment,
#lead-projects #project-table_wrapper[data-vst-col-segment="1"] td.col-segment {
  text-align: center !important;
}
#project-table_wrapper[data-vst-col-segment="1"] td.col-segment .segment-cell-content,
#lead-projects #project-table_wrapper[data-vst-col-segment="1"] td.col-segment .segment-cell-content {
  justify-content: center !important;
}

/* spring: 0 = описание+название, 1 = описание (emoji), 2 = название */
#project-table_wrapper[data-vst-col-spring="2"] td.col-spring .spring-desc,
#lead-projects #project-table_wrapper[data-vst-col-spring="2"] td.col-spring .spring-desc {
  display: none !important;
}
#project-table_wrapper[data-vst-col-spring="1"] td.col-spring .spring-title,
#lead-projects #project-table_wrapper[data-vst-col-spring="1"] td.col-spring .spring-title {
  display: none !important;
}
#project-table_wrapper[data-vst-col-spring="1"] td.col-spring .spring-desc,
#lead-projects #project-table_wrapper[data-vst-col-spring="1"] td.col-spring .spring-desc {
  display: inline !important;
  font-size: 20px;
  line-height: 1;
}
#project-table_wrapper[data-vst-col-spring="1"] td.col-spring,
#lead-projects #project-table_wrapper[data-vst-col-spring="1"] td.col-spring {
  text-align: center !important;
}

/* business (тип проекта): 0 = иконка+текст, 1 = иконка, 2 = текст */
#project-table_wrapper[data-vst-col-business="2"] td.col-business .biz-icon,
#lead-projects #project-table_wrapper[data-vst-col-business="2"] td.col-business .biz-icon {
  display: none !important;
}
#project-table_wrapper[data-vst-col-business="1"] td.col-business .biz-title,
#lead-projects #project-table_wrapper[data-vst-col-business="1"] td.col-business .biz-title {
  display: none !important;
}
#project-table_wrapper[data-vst-col-business="1"] td.col-business,
#lead-projects #project-table_wrapper[data-vst-col-business="1"] td.col-business {
  text-align: center !important;
}

/* priority: 0 = название+число, 1 = число, 2 = название */
#project-table_wrapper[data-vst-col-priority="1"] td.col-priority .priority-text,
#lead-projects #project-table_wrapper[data-vst-col-priority="1"] td.col-priority .priority-text {
  display: none !important;
}
#project-table_wrapper[data-vst-col-priority="2"] td.col-priority .priority-num,
#lead-projects #project-table_wrapper[data-vst-col-priority="2"] td.col-priority .priority-num {
  display: none !important;
}
#project-table_wrapper[data-vst-col-priority="1"] td.col-priority,
#lead-projects #project-table_wrapper[data-vst-col-priority="1"] td.col-priority {
  text-align: center !important;
}

#project-table th.col-type,
#project-table td.col-type,
.projects-page #project-table_wrapper .dataTables_scrollHead th.col-type,
.projects-page #project-table_wrapper .dataTables_scrollBody td.col-type,
#project-table_wrapper .dataTables_scrollHead th.col-type,
#project-table_wrapper .dataTables_scrollBody td.col-type,
#lead-projects #project-table_wrapper .dataTables_scrollHead th.col-type,
#lead-projects #project-table_wrapper .dataTables_scrollBody td.col-type {
  min-width: 220px !important;
  max-width: 220px !important;
  white-space: normal !important;
  word-break: break-word !important;
  overflow-wrap: anywhere;
}
#project-table th.col-spring-dual,
#project-table td.col-spring-dual,
.projects-page #project-table_wrapper .dataTables_scrollHead th.col-spring-dual,
.projects-page #project-table_wrapper .dataTables_scrollBody td.col-spring-dual {
min-width: 300px !important;
  max-width: 300px !important;
}
/* VST: единая шапка scrollY-таблиц (клиенты, холодные, проекты, рекламации, заявки, задачи, счета) */
.clients-page #client-table_wrapper .dataTables_scrollHead thead th,
.clients-page #colds-table_wrapper .dataTables_scrollHead thead th,
.projects-page #project-table_wrapper .dataTables_scrollHead thead th,
.projects-page .dataTables_scrollHead thead th,
#lead-projects #project-table_wrapper .dataTables_scrollHead thead th,
#lead-projects .dataTables_scrollHead thead th,
.claims-page #claim-table_wrapper .dataTables_scrollHead thead th,
.claims-page .claims-list-section .dataTables_scrollHead thead th,
.lead-projects-page #lead-projects-table_wrapper .dataTables_scrollHead thead th,
.lead-projects-page .dataTables_scrollHead thead th,
.tasks-page #task-table_wrapper .dataTables_scrollHead thead th,
.invoices-page #invoice-list-table_wrapper .dataTables_scrollHead thead th,
.invoices-page #invoice-payment-table_wrapper .dataTables_scrollHead thead th {
  background: var(--vst-table-head-bg, #dde2ea) !important;
  color: var(--vst-table-head-color, #1a2a42) !important;
  font-weight: 600;
  border-top: none !important;
  border-right: none !important;
  border-bottom: 1px solid var(--vst-border-default, #e2e6ec) !important;
}
.clients-page #client-table_wrapper .dataTables_scrollHead thead th:not(:last-child),
.clients-page #colds-table_wrapper .dataTables_scrollHead thead th:not(:last-child),
.projects-page #project-table_wrapper .dataTables_scrollHead thead th:not(:last-child),
.projects-page .dataTables_scrollHead thead th:not(:last-child),
#lead-projects #project-table_wrapper .dataTables_scrollHead thead th:not(:last-child),
#lead-projects .dataTables_scrollHead thead th:not(:last-child),
.claims-page #claim-table_wrapper .dataTables_scrollHead thead th:not(:last-child),
.claims-page .claims-list-section .dataTables_scrollHead thead th:not(:last-child),
.lead-projects-page #lead-projects-table_wrapper .dataTables_scrollHead thead th:not(:last-child),
.lead-projects-page .dataTables_scrollHead thead th:not(:last-child),
.tasks-page #task-table_wrapper .dataTables_scrollHead thead th:not(:last-child),
.invoices-page #invoice-list-table_wrapper .dataTables_scrollHead thead th:not(:last-child),
.invoices-page #invoice-payment-table_wrapper .dataTables_scrollHead thead th:not(:last-child) {
  box-shadow: inset -1px 0 0 var(--vst-table-head-divider, rgba(255, 255, 255, 0.9)) !important;
}
.clients-page #client-table_wrapper .dataTables_scrollHead thead th:first-child,
.clients-page #colds-table_wrapper .dataTables_scrollHead thead th:first-child,
.projects-page #project-table_wrapper .dataTables_scrollHead thead th:first-child,
.projects-page .dataTables_scrollHead thead th:first-child,
#lead-projects #project-table_wrapper .dataTables_scrollHead thead th:first-child,
#lead-projects .dataTables_scrollHead thead th:first-child,
.claims-page #claim-table_wrapper .dataTables_scrollHead thead th:first-child,
.claims-page .claims-list-section .dataTables_scrollHead thead th:first-child,
.lead-projects-page #lead-projects-table_wrapper .dataTables_scrollHead thead th:first-child,
.lead-projects-page .dataTables_scrollHead thead th:first-child,
.tasks-page #task-table_wrapper .dataTables_scrollHead thead th:first-child,
.invoices-page #invoice-list-table_wrapper .dataTables_scrollHead thead th:first-child,
.invoices-page #invoice-payment-table_wrapper .dataTables_scrollHead thead th:first-child {
  border-top-left-radius: var(--vst-radius-md, 10px);
  border-bottom-left-radius: var(--vst-radius-md, 10px);
}
.clients-page #client-table_wrapper .dataTables_scrollHead thead th:last-child,
.clients-page #colds-table_wrapper .dataTables_scrollHead thead th:last-child,
.projects-page #project-table_wrapper .dataTables_scrollHead thead th:last-child,
.projects-page .dataTables_scrollHead thead th:last-child,
#lead-projects #project-table_wrapper .dataTables_scrollHead thead th:last-child,
#lead-projects .dataTables_scrollHead thead th:last-child,
.claims-page #claim-table_wrapper .dataTables_scrollHead thead th:last-child,
.claims-page .claims-list-section .dataTables_scrollHead thead th:last-child,
.lead-projects-page #lead-projects-table_wrapper .dataTables_scrollHead thead th:last-child,
.lead-projects-page .dataTables_scrollHead thead th:last-child,
.tasks-page #task-table_wrapper .dataTables_scrollHead thead th:last-child,
.invoices-page #invoice-list-table_wrapper .dataTables_scrollHead thead th:last-child,
.invoices-page #invoice-payment-table_wrapper .dataTables_scrollHead thead th:last-child {
  border-top-right-radius: var(--vst-radius-md, 10px);
  border-bottom-right-radius: var(--vst-radius-md, 10px);
}
/* DataTables клонирует thead в scrollBody — скрываем клон */
.clients-page #client-table_wrapper .dataTables_scrollBody thead th,
.clients-page #colds-table_wrapper .dataTables_scrollBody thead th,
.projects-page #project-table_wrapper .dataTables_scrollBody thead th,
.projects-page .dataTables_scrollBody thead th,
#lead-projects #project-table_wrapper .dataTables_scrollBody thead th,
#lead-projects .dataTables_scrollBody thead th,
.claims-page #claim-table_wrapper .dataTables_scrollBody thead th,
.claims-page .claims-list-section .dataTables_scrollBody thead th,
.lead-projects-page #lead-projects-table_wrapper .dataTables_scrollBody thead th,
.lead-projects-page .dataTables_scrollBody thead th,
.tasks-page #task-table_wrapper .dataTables_scrollBody thead th,
.invoices-page #invoice-list-table_wrapper .dataTables_scrollBody thead th,
.invoices-page #invoice-payment-table_wrapper .dataTables_scrollBody thead th {
  background: transparent !important;
  border: none !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  border-top-width: 0 !important;
  border-bottom-width: 0 !important;
  height: 0 !important;
  line-height: 0 !important;
  font-size: 0 !important;
  overflow: hidden !important;
}
.price-header {
  position: relative;
  display: inline-block;
}
.price-sub {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transition: all 0.3s ease;
  font-size: 11px;
  color: #fff;
}
.price-header:hover .price-sub {
  max-height: 100px; 
  opacity: 1;
}
#project-table td {
  border-right: 1px solid #f2f4f8;
}
#project-table th:last-child,
#project-table td:last-child {
  border-right: none; 
}

/* Вертикальные разделители для таблицы лидов */
#lead-table td {
  border-right: 1px solid #f2f4f8; 
}
#lead-table th {
  border-right: 1px solid #ffffff44; 
}
#lead-table th:last-child,
#lead-table td:last-child {
  border-right: none; 
}

/* Вертикальные разделители и серая шапка для таблицы клиентов */
#client-table td,
#colds-table td {
  border-right: 1px solid #f2f4f8;
  border-bottom: 1px solid #eef1f6;
}
#client-table td:last-child,
#colds-table td:last-child {
  border-right: none; 
}
#colds-table tbody tr {
  cursor: pointer;
}

/* Вертикальные разделители для таблицы счетов */
#invoice-list-table td,
#invoice-payment-table td {
  border-right: 1px solid #f2f4f8;
}
#invoice-list-table td:last-child,
#invoice-payment-table td:last-child {
  border-right: none;
}
.invoices-page #invoice-list-table_wrapper .dataTables_scrollHead th.w100,
.invoices-page #invoice-list-table_wrapper .dataTables_scrollBody td.w100,
.invoices-page #invoice-list-table_wrapper .dataTables_scrollBody thead th.w100,
.invoices-page #invoice-payment-table_wrapper .dataTables_scrollHead th.w100,
.invoices-page #invoice-payment-table_wrapper .dataTables_scrollBody td.w100,
.invoices-page #invoice-payment-table_wrapper .dataTables_scrollBody thead th.w100 {
  width: 100px !important;
  min-width: 100px !important;
  max-width: 100px !important;
}
.invoices-page #invoice-list-table_wrapper .dataTables_scrollHead th.w110,
.invoices-page #invoice-list-table_wrapper .dataTables_scrollBody td.w110,
.invoices-page #invoice-list-table_wrapper .dataTables_scrollBody thead th.w110,
.invoices-page #invoice-payment-table_wrapper .dataTables_scrollHead th.w110,
.invoices-page #invoice-payment-table_wrapper .dataTables_scrollBody td.w110,
.invoices-page #invoice-payment-table_wrapper .dataTables_scrollBody thead th.w110 {
  width: 110px !important;
  min-width: 110px !important;
  max-width: 110px !important;
}
.invoices-page #invoice-list-table_wrapper .dataTables_scrollHead th.w300,
.invoices-page #invoice-list-table_wrapper .dataTables_scrollBody td.w300,
.invoices-page #invoice-list-table_wrapper .dataTables_scrollBody thead th.w300,
.invoices-page #invoice-payment-table_wrapper .dataTables_scrollHead th.w300,
.invoices-page #invoice-payment-table_wrapper .dataTables_scrollBody td.w300,
.invoices-page #invoice-payment-table_wrapper .dataTables_scrollBody thead th.w300 {
  width: 300px !important;
  min-width: 300px !important;
  max-width: 300px !important;
}
.invoices-page #invoice-list-table_wrapper .dataTables_scrollHead table,
.invoices-page #invoice-list-table_wrapper .dataTables_scrollBody table,
.invoices-page #invoice-payment-table_wrapper .dataTables_scrollHead table,
.invoices-page #invoice-payment-table_wrapper .dataTables_scrollBody table {
  table-layout: fixed !important;
}
#invoice-list-table td.w100.text-center,
#invoice-list-table td.w110.text-center,
#invoice-payment-table td.w100.text-center,
#invoice-payment-table td.w110.text-center {
  white-space: nowrap;
}

/* Суммы (Выставлено, Оплачено, К оплате) — без переноса на новую строку */
#client-table td.col-currency {
  white-space: nowrap;
}

/* Бейдж типа + метки в колонке Название — вертикально на одном уровне */
#client-table .client-name-badges-row {
  line-height: 1;
}
#client-table .client-name-badges-row .badge,
#client-table .client-name-badges-row .badge-client-project,
#client-table .client-name-badges-row .badge-client-retail,
#client-table .client-name-badges-row .badge-client-mixed {
  display: inline-flex !important;
  align-items: center;
  line-height: 1.2 !important;
  height: 22px !important;
  min-height: 22px !important;
  padding: 2px 8px !important;
  margin: 0 !important;
  vertical-align: middle;
}

/* Кружки для столбцов Проекты и Заявок в таблице клиентов */
.client-badge-projects {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 26px;
  height: 26px;
  padding: 0 6px;
  border-radius: 50%;
  background: #4a90d9;
  color: #fff !important;
  font-weight: 600;
}
.client-badge-requests {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 26px;
  height: 26px;
  padding: 0 6px;
  border-radius: 50%;
  background: #d5223c;
  color: #fff !important;
  font-weight: 600;
}
.client-badge-claims {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 26px;
  height: 26px;
  padding: 0 6px;
  border-radius: 50%;
  background: #ff4747;
  color: #fff !important;
  font-weight: 600;
}
.btn:hover {
  color: #ffffff;
  background-color: #1f446587;
  border-color: var(--bs-btn-hover-border-color);
}
/* Последний комментарий в таблице клиентов: бейдж даты и текст с ограничением 4 строки + тултип */
.client-last-comment-date {
  display: inline-block;
  border: 1px solid #888;
  font-weight: 700;
  font-size: 0.8em;
  padding: 2px 8px;
  border-radius: 15px;
}
.client-last-comment-meta {
  line-height: 1;
}
.client-last-comment-author {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}
.client-last-comment-author .avatar {
  margin: 0;
}
.clients-page .my-clients-toggle-wrap,
.projects-page .my-clients-toggle-wrap,
.lead-projects-page .my-clients-toggle-wrap {
  display: inline-flex;
  align-items: center;
  padding: 0 12px 0 4px;
  white-space: nowrap;
  min-height: 35px;
}
.clients-page .clients-my-only-switch,
.projects-page .clients-my-only-switch,
.lead-projects-page .clients-my-only-switch {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  cursor: pointer;
  user-select: none;
  min-height: 35px;
}
.clients-page .clients-my-only-switch-input,
.projects-page .clients-my-only-switch-input,
.lead-projects-page .clients-my-only-switch-input {
  position: absolute !important;
  opacity: 0 !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  pointer-events: none !important;
}
.clients-page .clients-my-only-switch-ui,
.projects-page .clients-my-only-switch-ui,
.lead-projects-page .clients-my-only-switch-ui {
  --clients-switch-w: 3.5rem;
  --clients-switch-h: 35px;
  --clients-switch-pad: 3px;
  position: relative;
  flex-shrink: 0;
  width: var(--clients-switch-w);
  height: var(--clients-switch-h);
  border-radius: 999px;
  background: #dee2e6;
  transition: background-color 0.2s ease;
}
.clients-page .clients-my-only-switch-ui::after,
.projects-page .clients-my-only-switch-ui::after,
.lead-projects-page .clients-my-only-switch-ui::after {
  content: "";
  position: absolute;
  top: var(--clients-switch-pad);
  left: var(--clients-switch-pad);
  width: calc(var(--clients-switch-h) - var(--clients-switch-pad) * 2);
  height: calc(var(--clients-switch-h) - var(--clients-switch-pad) * 2);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.18);
  transition: transform 0.2s ease;
}
.clients-page .clients-my-only-switch-input:checked ~ .clients-my-only-switch-ui,
.projects-page .clients-my-only-switch-input:checked ~ .clients-my-only-switch-ui,
.lead-projects-page .clients-my-only-switch-input:checked ~ .clients-my-only-switch-ui {
  background: #062451;
}
.clients-page .clients-my-only-switch-input:checked ~ .clients-my-only-switch-ui::after,
.projects-page .clients-my-only-switch-input:checked ~ .clients-my-only-switch-ui::after,
.lead-projects-page .clients-my-only-switch-input:checked ~ .clients-my-only-switch-ui::after {
  transform: translateX(calc(var(--clients-switch-w) - var(--clients-switch-h)));
}
.clients-page .clients-my-only-switch-input:focus-visible ~ .clients-my-only-switch-ui,
.projects-page .clients-my-only-switch-input:focus-visible ~ .clients-my-only-switch-ui,
.lead-projects-page .clients-my-only-switch-input:focus-visible ~ .clients-my-only-switch-ui {
  outline: none;
  outline-offset: 0;
}
.clients-page .clients-my-only-switch-text,
.projects-page .clients-my-only-switch-text,
.lead-projects-page .clients-my-only-switch-text {
  line-height: 35px;
  color: inherit;
}
.filter-option-with-icon {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  line-height: 1.2;
}
.filter-label-dot {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  flex-shrink: 0;
}
.filter-status-icon {
  width: 22px;
  height: 22px;
  min-width: 22px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: #fff;
  line-height: 0;
  overflow: hidden;
  vertical-align: middle;
}
.filter-status-icon svg,
.filter-status-icon .filter-status-feather {
  width: 12px;
  height: 12px;
  display: block;
  margin: 0;
  flex-shrink: 0;
  overflow: visible;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}
.filter-segment-icon {
  width: 22px;
  height: 22px;
  min-width: 22px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.filter-segment-icon img {
  width: 14px;
  height: 14px;
  object-fit: contain;
}
.filter-segment-icon-white img {
  filter: brightness(0) invert(1);
}
.select2-container .select2-choice .filter-option-with-icon,
.select2-results .filter-option-with-icon {
  vertical-align: middle;
}
.client-last-comment-cell {
  line-height: 1.4;
}
.client-last-comment-body {
  display: -webkit-box;
  -webkit-line-clamp: 5;
  line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
  word-break: break-word;
  font-size: 0.9em;
  font-style: italic;
}
/* Полоска между названием и текстом запроса (legacy, больше не вставляется в lead_projects) */
.request-title-divider {
  height: 0;
  border: none;
  border-top: 1px solid #e0e0e0;
  margin: 8px 0;
}
#lead-projects-table .col-request .request-text-limited {
  margin-top: 4px;
}
#lead-projects-table .col-lead .lead-projects-owner-avatar.avatar,
#lead-projects-table .col-lead .lead-projects-owner-avatar.avatar img {
  width: 22px !important;
  height: 22px !important;
  min-width: 22px;
  min-height: 22px;
}
#lead-projects-table .col-lead .lead-projects-owner-avatar.avatar-initials {
  font-size: 10px !important;
  line-height: 22px;
}
/* Текст запроса в таблицах розницы и lead_projects — как в таблице клиентов */
.request-text-limited {
  display: -webkit-box;
  -webkit-line-clamp: 5;
  line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
  max-height: 7em;
  word-break: break-word;
  font-size: 0.9em;
  font-style: italic;
}
.request-text-limited p {
  margin: 0 0 0.5em 0;
  display: inline;
}
.request-text-limited p:last-child {
  margin-bottom: 0;
}
.client-last-comment-body p {
  margin: 0 0 4px 0;
}
.client-last-comment-body p:last-child {
  margin-bottom: 0;
}
.client-settlements-cell {
  font-size: 0.8125rem;
  line-height: 1.35;
  max-width: 100%;
  overflow: hidden;
}
.client-settlements-line {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  padding: 2px 0;
}
.client-settlements-line + .client-settlements-line {
  border-top: 1px dashed rgba(0, 0, 0, 0.06);
}
.client-settlements-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  flex-shrink: 0;
  background: #e8eef5;
  color: #4a6fa5;
}
.client-settlements-icon svg {
  width: 12px;
  height: 12px;
  stroke-width: 2.25;
}
.client-settlements-icon--invoiced {
  background: #e8eef5;
  color: #4a6fa5;
}
.client-settlements-icon--paid {
  background: #d1e7dd;
  color: #198754;
}
.client-settlements-icon--due {
  background: #f8d7da;
  color: #dc3545;
}
.client-settlements-icon--due-zero {
  background: #f1f3f5;
  color: #adb5bd;
}
.client-settlements-label {
  color: var(--bs-secondary-color, #6c757d);
  font-size: 0.75rem;
  white-space: nowrap;
  flex-shrink: 0;
}
.client-settlements-value {
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  text-align: right;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}
.client-settlements-value--paid {
  color: #198754;
}
.client-settlements-value--due {
  color: #dc3545;
}
.client-settlements-value--zero {
  color: var(--bs-secondary-color, #6c757d);
  font-weight: 500;
}
#client-table td.col-client-settlements {
  vertical-align: middle;
  overflow: hidden;
}

/* Вертикальные разделители и серая шапка для таблицы заявок (lead_projects) */
/* Одинаковая ширина столбцов в шапке и данных — убирает расхождение */
#lead-projects-table th.col-w30,
#lead-projects-table td.col-w30 { min-width: 30px; max-width: 30px; width: 30px !important; }
#lead-projects-table th.col-w100,
#lead-projects-table td.col-w100 { min-width: 100px; max-width: 100px; width: 100px !important; }
#lead-projects-table th.col-w120,
#lead-projects-table td.col-w120 { min-width: 120px; max-width: 120px; width: 120px !important; }
#lead-projects-table th.col-w150,
#lead-projects-table td.col-w150 { min-width: 150px; max-width: 150px; width: 150px !important; }
#lead-projects-table th.col-w220,
#lead-projects-table td.col-w220 { min-width: 220px; max-width: 220px; width: 220px !important; }
#lead-projects-table th.col-w200,
#lead-projects-table td.col-w200 { min-width: 200px; max-width: 200px; width: 200px !important; }
#lead-projects-table th.col-w250,
#lead-projects-table td.col-w250 { min-width: 250px; max-width: 250px; width: 250px !important; }
#lead-projects-table th.col-w300,
#lead-projects-table td.col-w300 { min-width: 300px; max-width: 300px; width: 300px !important; }
#lead-projects-table th.col-w500,
#lead-projects-table td.col-w500 { min-width: 500px; max-width: 500px; width: 500px !important; }
#lead-projects-table th.option,
#lead-projects-table td.option { min-width: 100px; max-width: 100px; width: 100px !important; }
/* Те же ширины для шапки в scrollHead (DataTables) */
.lead-projects-page .dataTables_scrollHead th.col-w30 { min-width: 30px; max-width: 30px; width: 30px !important; }
.lead-projects-page .dataTables_scrollHead th.col-w100 { min-width: 100px; max-width: 100px; width: 100px !important; }
.lead-projects-page .dataTables_scrollHead th.col-w120 { min-width: 120px; max-width: 120px; width: 120px !important; }
.lead-projects-page .dataTables_scrollHead th.col-w150 { min-width: 150px; max-width: 150px; width: 150px !important; }
.lead-projects-page .dataTables_scrollHead th.col-w220 { min-width: 220px; max-width: 220px; width: 220px !important; }
.lead-projects-page .dataTables_scrollHead th.col-w200 { min-width: 200px; max-width: 200px; width: 200px !important; }
.lead-projects-page .dataTables_scrollHead th.col-w250 { min-width: 250px; max-width: 250px; width: 250px !important; }
.lead-projects-page .dataTables_scrollHead th.col-w300 { min-width: 300px; max-width: 300px; width: 300px !important; }
.lead-projects-page .dataTables_scrollHead th.col-w500 { min-width: 500px; max-width: 500px; width: 500px !important; }
#lead-projects-table td {
  border-right: 1px solid #f2f4f8; 
}
#lead-projects-table td.col-application-name {
  font-weight: bold;
  color: #08377f;
}
#lead-projects-table td:last-child {
  border-right: none; 
}
/* Выравнивание: шапка и данные в одну линию (убираем расхождение вправо) */
#lead-projects-table thead th,
#lead-projects-table tbody td {
  text-align: left !important;
}
#lead-projects-table thead th.option,
#lead-projects-table tbody td.option {
  text-align: center !important;
}
#lead-projects-table thead th.col-status,
#lead-projects-table tbody td.col-status,
#lead-projects-table thead th.col-stage,
#lead-projects-table tbody td.col-stage,
#lead-projects-table thead th.col-created,
#lead-projects-table tbody td.col-created,
#lead-projects-table thead th.col-segment,
#lead-projects-table tbody td.col-segment,
#lead-projects-table thead th.col-application,
#lead-projects-table tbody td.col-application,
#lead-projects-table thead th.col-availability,
#lead-projects-table tbody td.col-availability,
#lead-projects-table thead th.col-invoice,
#lead-projects-table tbody td.col-invoice,
#lead-projects-table thead th.col-comments,
#lead-projects-table tbody td.col-comments,
#lead-projects-table thead th.col-order,
#lead-projects-table tbody td.col-order,
#lead-projects-table thead th.col-shipment-num,
#lead-projects-table tbody td.col-shipment-num,
#lead-projects-table thead th.col-shipment-date,
#lead-projects-table tbody td.col-shipment-date {
  text-align: center !important;
}
#lead-projects-table td.dataTables_empty {
  text-align: left !important;
}
.lead-projects-page .dataTables_scrollHead thead th {
  text-align: left !important;
}
.lead-projects-page .dataTables_scrollHead thead th.option {
  text-align: center !important;
}
.lead-projects-page .dataTables_scrollHead thead th.col-status,
.lead-projects-page .dataTables_scrollHead thead th.col-stage,
.lead-projects-page .dataTables_scrollHead thead th.col-created,
.lead-projects-page .dataTables_scrollHead thead th.col-segment,
.lead-projects-page .dataTables_scrollHead thead th.col-application,
.lead-projects-page .dataTables_scrollHead thead th.col-availability,
.lead-projects-page .dataTables_scrollHead thead th.col-invoice,
.lead-projects-page .dataTables_scrollHead thead th.col-comments,
.lead-projects-page .dataTables_scrollHead thead th.col-order,
.lead-projects-page .dataTables_scrollHead thead th.col-shipment-num,
.lead-projects-page .dataTables_scrollHead thead th.col-shipment-date {
  text-align: center !important;
}
/* Фикс выравнивания колонок при scroll (DataTables) */
.lead-projects-page .dataTables_scrollHeadInner {
  padding-left: 0 !important;
}
tr.status-open-row td {
  background-color: #ffffff !important;
}
.dataTable:not(.js-selection-mode) tbody tr.status-open-row:hover td {
  background: #f2f2f2 !important;
}
tr.status-completed-row td {
  background-color: #d0f2d1 !important;
}
.dataTable:not(.js-selection-mode) tbody tr.status-completed-row:hover td {
  background: #c7f5c8 !important;
}
tr.status-hold-row td {
  background-color: #94f4f1 !important;
}
.dataTable:not(.js-selection-mode) tbody tr.status-hold-row:hover td {
  background: #7aece8 !important;
}
tr.status-canceled-row td {
  background-color: #b2b2b2 !important;
}
.dataTable:not(.js-selection-mode) tbody tr.status-canceled-row:hover td {
  background: #9c9b9b !important;
}
tr.status-mood-row td {
  background-color: #f2adb5 !important;
}
tr td:first-child {
  border-top-left-radius: 10px !important;
  border-bottom-left-radius: 10px !important;
}

tr td:last-child {
  border-top-right-radius: 10px !important;
  border-bottom-right-radius: 10px !important;
}
.dataTable:not(.js-selection-mode) tbody tr.status-mood-row:hover td {
  background: #ff909d !important;
}
tr.status-alarm-row td {
  background-color: #f7f198 !important;
}
.dataTable:not(.js-selection-mode) tbody tr.status-alarm-row:hover td {
  background: #fce69e !important;
}
/* Фон по статусу проекта — на всю высоту экрана */
.page-content.project-details-view[class*="status-"] {
  min-height: 100vh;
}
.status-completed {
background: linear-gradient(90deg,#d0f2d1 0%, rgba(255, 255, 255, 0) 100%); }
.status-hold  {
background: linear-gradient(90deg,#94f4f188 0%, rgba(255, 255, 255, 0) 100%); }
.status-canceled {
background: linear-gradient(90deg,#b2b2b288 0%, rgba(255, 255, 255, 0) 100%); }
.status-mood {
background: linear-gradient(90deg,#f2adb588 0%, rgba(255, 255, 255, 0) 100%); }
.status-alarm {
background: linear-gradient(90deg,#f7f19888 0%, rgba(255, 255, 255, 0) 100%); }
.star-icon {
padding: 5px 10px;
color: #ffb822;
background:#fff;
border-radius:10px;
}
.mb10 {
margin-top:8px;
}
.stage-block.stage-active > .accordion-header .accordion-button {
  box-shadow: 0 0 0 .2rem rgba(6, 36, 81,.25);
  border-left: 3px solid #062451;
}
.status-circle{
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: inline-block;
}
.status-legend-item.filter-status{ cursor:pointer; user-select:none; }
.status-legend-item.filter-status.active .status-circle{
  outline: 2px solid #062451; 
  outline-offset: 2px;        
}
.status-legend-item.filter-client-type{ cursor:pointer; user-select:none; }
.status-legend-item.filter-client-type.active .status-circle{
  outline: 2px solid #062451; 
  outline-offset: 2px;        
}

.status-open-circle      { background-color: #ffffff; border:1px solid #f1f1f5; }  
.status-completed-circle { background-color: #0ecc3b40; border:1px solid #f1f1f5;}  
.status-hold-circle      { background-color: #94f4f1; border:1px solid #f1f1f5;}  
.status-canceled-circle  { background-color: #b2b2b2; border:1px solid #f1f1f5;}  
.status-mood-circle      { background-color: #f2adb5; border:1px solid #f1f1f5;}  
.status-alarm-circle     { background-color: #f7f198; border:1px solid #f1f1f5;}  
.status-legend-item .small{
  line-height: 1;
}

/* 
tr.lead-status-in-progress td {
  background-color: #cfe9d1 !important;  
}
.dataTable:not(.js-selection-mode) tbody tr.lead-status-in-progress:hover td {
  background: #cfe9d1 !important;
}
  /* В работе - зеленый */

tr.lead-status-rejected td {
  background-color: #dc354540 !important;  /* Отказ - красный */
}
.dataTable:not(.js-selection-mode) tbody tr.lead-status-rejected:hover td {
  background: #dc354570 !important;
}

tr.lead-status-in-production td {
  background-color: #ffc10740 !important;  /* Заказ в производстве - желтый */
}
.dataTable:not(.js-selection-mode) tbody tr.lead-status-in-production:hover td {
  background: #ffc10770 !important;
}

tr.lead-status-shipped td {
  background-color: #17a2b840 !important;  /* Огружен - голубой */
}
.dataTable:not(.js-selection-mode) tbody tr.lead-status-shipped:hover td {
  background: #17a2b870 !important;
}

tr.lead-status-in-transit td {
  background-color: #6f42c140 !important;  /* В пути - фиолетовый */
}
.dataTable:not(.js-selection-mode) tbody tr.lead-status-in-transit:hover td {
  background: #6f42c170 !important;
}

tr.lead-status-in-warehouse td {
  background-color: #fd7e1440 !important;  /* На складе - оранжевый */
}
.dataTable:not(.js-selection-mode) tbody tr.lead-status-in-warehouse:hover td {
  background: #fd7e1470 !important;
}

tr.lead-status-purchase-postponed td {
  background-color: #6c757d40 !important;  /* Перенос закупки - серый */
}
.dataTable:not(.js-selection-mode) tbody tr.lead-status-purchase-postponed:hover td {
  background: #6c757d70 !important;
}
.seg-icon,
.biz-icon {
  flex-shrink: 0 !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  max-width: 34px !important;
  max-height: 34px !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.spring-desc {
  transition: font-size 0.3s ease;
}
#project-table th.col-competition,
#project-table td.col-competition {
  min-width: 100px !important;
  max-width: 100px !important;
}
#project-table th.col-price,
#project-table td.col-price {
  min-width: 100px !important;
  max-width: 100px !important;
}
#project-table th.col-start,
#project-table td.col-start {
  min-width: 100px !important;
  max-width: 100px !important;
}
#project-table th.col-deadline,
#project-table td.col-deadline {
  min-width: 100px !important;
  max-width: 100px !important;
}
#project-table th.col-progress,
#project-table td.col-progress {
  min-width: 200px !important;
  max-width: 200px !important;
}

/* Данные: Конкурент, Мин. цена, даты, процесс, приоритет — по центру */
#project-table td.col-competition,
#project-table td.col-price,
#project-table td.col-start,
#project-table td.col-deadline,
#project-table td.col-progress,
#project-table td.col-priority,
.projects-page #project-table_wrapper .dataTables_scrollBody td.col-competition,
.projects-page #project-table_wrapper .dataTables_scrollBody td.col-price,
.projects-page #project-table_wrapper .dataTables_scrollBody td.col-start,
.projects-page #project-table_wrapper .dataTables_scrollBody td.col-deadline,
.projects-page #project-table_wrapper .dataTables_scrollBody td.col-progress,
.projects-page #project-table_wrapper .dataTables_scrollBody td.col-priority,
#project-table_wrapper .dataTables_scrollBody td.col-competition,
#project-table_wrapper .dataTables_scrollBody td.col-price,
#project-table_wrapper .dataTables_scrollBody td.col-start,
#project-table_wrapper .dataTables_scrollBody td.col-deadline,
#project-table_wrapper .dataTables_scrollBody td.col-progress,
#project-table_wrapper .dataTables_scrollBody td.col-priority,
#lead-projects #project-table_wrapper .dataTables_scrollBody td.col-competition,
#lead-projects #project-table_wrapper .dataTables_scrollBody td.col-price,
#lead-projects #project-table_wrapper .dataTables_scrollBody td.col-start,
#lead-projects #project-table_wrapper .dataTables_scrollBody td.col-deadline,
#lead-projects #project-table_wrapper .dataTables_scrollBody td.col-progress,
#lead-projects #project-table_wrapper .dataTables_scrollBody td.col-priority {
  text-align: center !important;
}

#project-table td.col-priority .priority-cell,
#project-table_wrapper .dataTables_scrollBody td.col-priority .priority-cell,
#lead-projects #project-table_wrapper .dataTables_scrollBody td.col-priority .priority-cell {
  justify-content: center !important;
}

#project-table td.col-progress .progress,
#project-table_wrapper .dataTables_scrollBody td.col-progress .progress,
#lead-projects #project-table_wrapper .dataTables_scrollBody td.col-progress .progress {
  margin-left: auto;
  margin-right: auto;
}

/* Во вкладке «Проекты» карточки клиента — скрываем столбец «Заказчик» */
.projects-embedded-hide-client th.col-client,
.projects-embedded-hide-client td.col-client {
  display: none !important;
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  padding: 0 !important;
  overflow: hidden;
}
#project-table th.col-comment,
#project-table td.col-comment {
  min-width: 300px !important;
  max-width: 300px !important;
}
#project-table th.col-status,
#project-table td.col-status {
  min-width: 100px !important;
  max-width: 100px !important;
}
#project-table th.col-options,
#project-table td.col-options {
  min-width: 100px !important;
  max-width: 100px !important;
}
.price-line {
      line-height: 1.2;
  }

  #default-navbar #user-dropdown:hover .user-rating .rating-number {
    color: #ffab00 !important;
    background: rgba(255, 171, 0, 0.12);
    transition: color 0.2s ease, background 0.2s ease;
  }

  .price-line.muted {
      color: #999;
      font-size: 12px;
  }
  .price-line.strong {
      font-weight: bold;
      color: #444;
      font-size: 13px;
  }
  #project-table thead th {
  text-align: center !important;
}
.table-wrapper-scroll-x::-webkit-scrollbar {
  height: 8px;
}
.table-wrapper-scroll-x {
  overflow-x: auto;
  overflow-y: hidden;
  width: 100%;
  position: relative;
  padding-bottom: 1px; 
}
.table-wrapper-scroll-x::after {
  content: '';
  display: block;
  height: 1px;
  min-width: 1300px; 
}
.pt1 {
  padding-top: 10px !important;
}
.white2 {
color:#fff !important;
}
.btn-outline-primary {border: 1px solid #072451 !important;color: #072451 !important;}
.btn-outline-primary:hover, .btn-outline-primary:focus {
border:1px solid #072451 !important;
background: #072451 !important;
color:#fff !important;
}
.dataTable:not(.js-selection-mode) tbody tr:hover td {
  background: #efefef !important;
}
.dashed-row .form-group .row label:first-child {
  padding: 0 0px;
}
.form-control {
  color: #000000 !important;
  font-weight: 500 !important;
}
  .metric-block {
      display: flex;
      flex-direction: column; 
      align-items: flex-start; 
      padding: 8px 0;
      border-bottom: 1px solid #eee;
      text-align: left;
  }
  .metric-block:last-child {
      border-bottom: none;
  }
  .metric-block h1 {
      margin: 0;
      font-size: 32px;
      line-height: 1;
      font-weight: bold;
  }
  .metric-label {
      font-size: 11px;
      margin-top: 4px;
  }
    .claim-file-card {
  border: 1px solid var(--bs-border-color);
  border-radius: .5rem;
  padding: .6rem .7rem;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .5rem;
}
.claim-file-left {
  display: flex;
  align-items: center;
  gap: .5rem;
  min-width: 0;
}
.claim-file-name {
  display: block;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
.claim-file-actions .btn {
  padding: .15rem .35rem;
}
.claim-file-icon{
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.claim-file-icon .claim-icon{
  width: 48px; height: 48px;
}
.claim-file-name{
  font-size: 12px;
  color: #212529;
  overflow: hidden;
  white-space: nowrap;
}
.claim-file-name-track{
  display: inline-block;
  white-space: nowrap;
}
.claim-file-card:hover .claim-file-name-track{
  animation: claimMarquee 8s linear infinite;
}
@keyframes claimMarquee{
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); } 
}
.claim-file-delete {
  position: absolute;
  top: 6px; right: 6px;
  opacity: 0; visibility: hidden;
  transition: opacity .15s ease, visibility .15s ease;
  background-color: #fff !important;
  border: 1px solid rgba(0, 0, 0, 0.12);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
}
.claim-file-card:hover .claim-file-delete,
.claim-files-card:hover .claim-file-delete,
.file-card:hover .claim-file-delete {
  opacity: 1; visibility: visible;
}
.claim-file-delete .btn{
  padding: 2px 6px;
}
.file-card {
  position: relative;
  border: 1px solid var(--bs-border-color, #e9ecef);
  border-radius: .5rem;
  padding: .75rem .75rem .5rem;
  text-align: center;
  background: #fff;
}
.file-card .file-icon {
  font-size: 40px;
  line-height: 1;
  margin: .1rem 0 .35rem;
  color: #6c757d;
}
.marquee-wrap {
  overflow: hidden;
  white-space: nowrap;
}
.file-card .marquee-wrap,
.claim-files-card .marquee-wrap {
  font-size: 50%;
  line-height: 1.2;
}
.marquee {
  display: inline-block;
  will-change: transform;
  transition: transform 0.2s linear;
}
.marquee-wrap:hover .marquee {
  animation: marquee-slide 6s linear infinite;
}
@keyframes marquee-slide {
  0% { transform: translateX(0); }
  50% { transform: translateX(-60%); }
  100% { transform: translateX(0); }
}
.file-card .delete-step1-file {
  position: absolute;
  top: 6px;
  right: 6px;
  opacity: 0;
  transition: opacity .15s ease;
}
.file-card:hover .delete-step1-file {
  opacity: 1;
}
#dt-xbar {
position: fixed;
left: 18.5%;
bottom: 2px;
transform: translateX(-50%);
width: 200px;
height: 15px;
overflow-x: auto;
overflow-y: hidden;
z-index: 9999;
border-radius: 999px;
background: #06245166;
box-shadow: 0 0px 6px rgba(0, 0, 0, .5);
user-select: none;
backdrop-filter:blur(10px);
}
#dt-xbar::-webkit-scrollbar { height: 14px; }
#dt-xbar::-webkit-scrollbar-thumb {
border-radius: 140px;
width: 80px;
backdrop-filter:blur(10px);
background: #06245144;
}
#dt-xbar-inner { height: 0px; }
body.vst-custom-table-scroll-on .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar { display: none; }
body.vst-custom-table-scroll-on .dataTables_wrapper .dataTables_scrollBody { scrollbar-width: none; }
body:not(.vst-custom-xbar-on) #dt-xbar,
body:not(.vst-custom-xbar-on) #dt-xbar-mode {
  display: none !important;
}

/* Режим B: зоны прокрутки снаружи блока страницы, без сужения таблицы */
.vst-table-scroll-edge {
  position: fixed;
  width: 22px;
  border: 0;
  padding: 0;
  margin: 0;
  background: transparent;
  color: rgba(6, 36, 81, 0.45);
  cursor: pointer;
  z-index: 120;
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.2s ease, color 0.2s ease;
  pointer-events: auto;
}
.vst-table-scroll-edge.is-visible {
  opacity: 0.3;
}
.vst-table-scroll-edge:hover:not(.is-disabled),
.vst-table-scroll-edge:focus-visible:not(.is-disabled) {
  opacity: 1;
  color: rgba(6, 36, 81, 0.85);
}
.vst-table-scroll-edge.is-disabled {
  opacity: 0 !important;
  pointer-events: none;
}
.vst-table-scroll-edge .icon-16,
.vst-table-scroll-edge svg {
  width: 16px;
  height: 16px;
  opacity: 0.7;
}
.vst-table-scroll-edge:hover:not(.is-disabled) svg,
.vst-table-scroll-edge:focus-visible:not(.is-disabled) svg {
  opacity: 1;
}
@media (max-width: 767px) {
  .vst-table-scroll-edge {
    display: none !important;
  }
}

#dt-xbar-mode{
position: absolute;
right: 4px;
top: 99%  !important;
transform: translateY(-50%);
width: 24px; height: 24px;
border-radius: 50%; border: 0;
background: #fff; color:#062451;
box-shadow: 0 2px 8px rgba(0,0,0,.2);
display: inline-flex; align-items:center; justify-content:center;
cursor: pointer; z-index: 10001;
}
#dt-xbar-mode.is-active{ background:#072451;
color:#fff;
}
#dt-xbar-mode:hover { filter: brightness(1.05); }
.alert-warning {
  background-color: #ff5252;
  color: #fff !important;
  border:1px solid red;
  
  font-weight:600;
}
.alert-warning svg {
  width:40px;
height:40px;
margin-top:1px;
}

/* Панель переключения дашбордов (внизу страницы) */
/* Фон рабочей области (предпочтения staff) */
.global-background {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: -1;
  pointer-events: none;
}

#background-video {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100vw;
  height: 100vh;
  object-fit: cover;
}

/* Подложка над видео на странице входа */
body.public-view.signin-page .login-background::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #a6a8b2a1;
  z-index: 1;
  pointer-events: none;
}

body.public-view.signin-page .login-background #background-video {
  z-index: 0;
  filter: blur(3px);
  transform: translate(-50%, -50%) scale(1.03);
}

.global-background.workspace-bg-static,
.global-background.workspace-bg-static-fallback {
  background: linear-gradient(
    180deg,
    #ffffff 0%,
    #f6f7f9 42%,
    #eceef2 78%,
    #e8ebf0 100%
  );
}

.global-background.workspace-bg-animated {
  position: fixed;
  background: linear-gradient(
    135deg,
    #ffffff 0%,
    #f5f7fa 12%,
    #eef1f5 24%,
    #ffffff 32%,
    #e8ecf2 42%,
    rgba(74, 144, 217, 0.07) 52%,
    #f2f4f8 62%,
    #ffffff 72%,
    #e6eaef 82%,
    rgba(74, 144, 217, 0.05) 90%,
    #f0f2f6 100%
  );
  background-size: 420% 420%;
  animation: workspace-bg-gradient-shift 26s ease-in-out infinite;
}

.global-background.workspace-bg-animated::before {
  content: "";
  position: absolute;
  inset: -20%;
  background:
    radial-gradient(ellipse 55% 45% at 20% 30%, rgba(255, 255, 255, 0.85) 0%, transparent 58%),
    radial-gradient(ellipse 50% 40% at 78% 65%, rgba(74, 144, 217, 0.09) 0%, transparent 62%),
    radial-gradient(ellipse 40% 35% at 55% 85%, rgba(255, 255, 255, 0.55) 0%, transparent 55%);
  opacity: 0.35;
  animation: workspace-bg-flash-layer 22s ease-in-out infinite;
  pointer-events: none;
}

@keyframes workspace-bg-gradient-shift {
  0% {
    background-position: 0% 25%;
  }
  25% {
    background-position: 55% 75%;
  }
  50% {
    background-position: 100% 35%;
  }
  75% {
    background-position: 35% 5%;
  }
  100% {
    background-position: 0% 25%;
  }
}

@keyframes workspace-bg-flash-layer {
  0%,
  100% {
    opacity: 0.2;
    transform: translate(0, 0) scale(1);
  }
  18% {
    opacity: 0.75;
    transform: translate(4%, -3%) scale(1.04);
  }
  42% {
    opacity: 0.35;
    transform: translate(-3%, 5%) scale(0.98);
  }
  65% {
    opacity: 0.85;
    transform: translate(6%, 2%) scale(1.06);
  }
  88% {
    opacity: 0.4;
    transform: translate(-2%, -4%) scale(1.02);
  }
}

@media (prefers-reduced-motion: reduce) {
  .global-background.workspace-bg-animated {
    animation: none;
    background: linear-gradient(
      180deg,
      #ffffff 0%,
      #f6f7f9 42%,
      #eceef2 78%,
      #e8ebf0 100%
    );
    background-size: auto;
  }

  .global-background.workspace-bg-animated::before {
    display: none;
  }
}

.global-background.workspace-bg-admin-image {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* Мои предпочтения — лейбл сверху, чипы в строку */
.user-preferences-body .user-pref-field {
  margin-bottom: 22px;
}

.user-preferences-body .user-pref-field:last-child {
  margin-bottom: 0;
}

.user-pref-label {
  display: block;
  margin-bottom: 8px;
  font-size: 13px;
  font-weight: 600;
  color: #072451;
}

.user-pref-info-link {
  margin-left: 8px;
  font-size: 12px;
  font-weight: 400;
  color: #4a90d9;
  text-decoration: none;
}

.user-pref-info-link:hover {
  text-decoration: underline;
  color: #072451;
}

.user-pref-chips {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.user-pref-chip {
  margin: 0;
  cursor: pointer;
}

.user-pref-chip input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.user-pref-chip-btn {
  display: inline-block;
  padding: 7px 14px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 500;
  color: #3d4f66;
  background: #fff;
  border: 1px solid rgba(7, 36, 81, 0.12);
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
  white-space: nowrap;
}

.user-pref-chip input:checked + .user-pref-chip-btn {
  background: #072451;
  border-color: #072451;
  color: #fff;
}

.user-pref-chip:hover input:not(:checked) + .user-pref-chip-btn {
  border-color: #4a90d9;
  color: #072451;
}

/* Страницы настроек — единая типографика и отступы */
.settings-page {
  --settings-pad-x: 28px;
  --settings-pad-y: 24px;
  --settings-section-gap: 28px;
  --settings-block-gap: 20px;
  --settings-label-gap: 8px;
  --settings-row-gap: 12px;
  --settings-section-title-size: 13px;
  --settings-field-label-size: 12px;
  --settings-color-heading: #072451;
  --settings-color-label: #3d4f66;
  --settings-color-muted: #6b7c93;
  --settings-border: rgba(7, 36, 81, 0.08);
}

.settings-page .settings-tabs-card {
  border: 1px solid var(--settings-border);
}

.settings-page .settings-tabs-card > .nav-tabs {
  margin-bottom: 0;
}

.settings-page .settings-form-card {
  border: 1px solid var(--settings-border);
  box-shadow: 0 2px 12px rgba(7, 36, 81, 0.04);
}

.settings-page .settings-page-body,
.settings-page-body {
  padding: var(--settings-pad-y) var(--settings-pad-x);
}

/* Заголовки секций (Брендинг, Приложение, …) */
.settings-page .settings-section-title,
.settings-page .settings-pref-group-title {
  margin: 0 0 var(--settings-block-gap);
  padding: 0;
  font-size: var(--settings-section-title-size);
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.02em;
  color: var(--settings-color-heading);
}

.settings-page .settings-section-title:not(:first-child),
.settings-page .settings-pref-group-title:not(:first-child) {
  margin-top: var(--settings-section-gap);
  padding-top: 16px;
  border-top: 1px solid var(--settings-border);
}

/* Подписи полей */
.settings-page .settings-field-label,
.settings-page .user-pref-label {
  display: block;
  margin: 0 0 var(--settings-label-gap);
  padding: 0;
  font-size: var(--settings-field-label-size);
  font-weight: 600;
  line-height: 1.4;
  color: var(--settings-color-label);
}

.settings-page .settings-field-label .help,
.settings-page .user-pref-label .help {
  margin-left: 4px;
  font-weight: 400;
  color: var(--settings-color-muted);
  vertical-align: middle;
}

.settings-page .settings-field-label .icon-14,
.settings-page .user-pref-label .icon-14 {
  width: 14px;
  height: 14px;
  vertical-align: -2px;
}

/* Блоки полей и строки */
.settings-page .user-pref-field {
  margin-bottom: var(--settings-block-gap);
}

.settings-page .user-pref-field:last-child,
.settings-page .settings-page-body > .row:last-child {
  margin-bottom: 0;
}

.settings-page .settings-col-field {
  margin-bottom: 0;
}

.settings-page .row.g-3,
.settings-page .row.g-3.settings-row-3,
.settings-page .row.g-3.settings-row-4,
.settings-page .row.g-3.settings-row-5,
.settings-page .row.g-3.settings-row-2,
.settings-page .row.g-3.settings-files-row {
  --bs-gutter-x: var(--settings-row-gap);
  --bs-gutter-y: var(--settings-row-gap);
  margin-bottom: var(--settings-block-gap);
}

.settings-page .row.g-3:last-child {
  margin-bottom: 0;
}

.settings-page .settings-pref-hint {
  margin: var(--settings-label-gap) 0 0;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.45;
  color: var(--settings-color-muted);
}

.settings-page .settings-pref-control {
  max-width: 420px;
}

.settings-page .settings-pref-control-wide {
  max-width: 100%;
}

.settings-page .settings-pref-control .form-control,
.settings-page .settings-pref-control-wide .form-control,
.settings-page .settings-col-field .form-control {
  max-width: 100%;
  font-size: 13px;
}

.settings-page .settings-col-field .user-pref-chips {
  margin-top: 0;
}

.settings-page .settings-file-formats-field .settings-file-formats-editor {
  width: 100%;
  max-width: 100%;
}

.settings-page .settings-file-formats-field .form-control {
  max-width: 100%;
  width: 100%;
}

.settings-page .settings-first-day-chips .user-pref-chips {
  display: flex;
  flex-wrap: nowrap;
  gap: 4px;
  width: 100%;
}

.settings-page .settings-first-day-chips .user-pref-chip {
  flex: 1 1 0;
  min-width: 0;
}

.settings-page .settings-first-day-chips .user-pref-chip-btn {
  display: block;
  width: 100%;
  font-size: 10px;
  padding: 6px 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: center;
}

.settings-notifications-page .settings-notifications-hint {
  font-size: 12px;
  margin-top: 4px;
}

.settings-notifications-page .notification-settings-table-wrap {
  padding: 0 16px 16px;
}

.settings-notifications-page .notification-settings-table {
  font-size: 12px;
}

.settings-notifications-page .notification-settings-table td {
  padding: 6px 8px !important;
  vertical-align: middle;
}

.settings-notifications-page .notification-event-cell {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  line-height: 1.3;
}

.settings-notifications-page .notification-event-title {
  font-weight: 500;
}

.settings-notifications-page .notification-event-category {
  font-size: 10px;
  font-weight: 500;
  background: #e8eef5;
  color: #4a5f7a;
}

.settings-notifications-page .notification-notify-to-text {
  display: block;
  max-width: 320px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #5c6b7a;
}

.settings-notifications-page .notification-col-channel {
  width: 44px;
}

.settings-notifications-page .notification-col-edit {
  width: 40px;
}

.settings-notifications-page .notification-channel-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 1px solid #d8e2ef;
  border-radius: 8px;
  background: #fff;
  color: #9aa8b8;
  cursor: pointer;
  transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.settings-notifications-page .notification-channel-toggle.is-on {
  border-color: #072451;
  background: #072451;
  color: #fff;
}

.settings-notifications-page .notification-channel-toggle:not(.is-disabled):not(.is-on):hover {
  border-color: #4a90d9;
  color: #072451;
}

.settings-notifications-page .notification-channel-toggle.is-disabled {
  border: none;
  background: transparent;
  color: #c5ced8;
  cursor: default;
}

.settings-notifications-page .notification-channel-toggle.is-loading {
  opacity: 0.5;
  pointer-events: none;
}

.settings-page .settings-localization-currency-row .select2-container {
  width: 100% !important;
}

.settings-page .settings-localization-currency-row .form-control {
  max-width: 100%;
}

.settings-pref-upload-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 16px;
}

.settings-pref-upload-row img {
  border-radius: 6px;
  border: 1px solid rgba(7, 36, 81, 0.1);
  background: #fff;
}

#site-logo-preview {
  width: 175px;
  max-width: 100%;
}

.settings-pref-upload-img-sm {
  max-width: 48px;
  max-height: 48px;
}

.settings-pref-upload-img-xs {
  width: 32px;
}

.settings-pref-upload-img-md {
  max-width: 120px;
  max-height: 80px;
}

.settings-pref-upload-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.settings-pref-color input[type="color"] {
  width: 56px;
  height: 36px;
  padding: 2px;
  border: 1px solid rgba(7, 36, 81, 0.15);
  border-radius: 8px;
  cursor: pointer;
}

.settings-page #settings-color-plate span {
  cursor: pointer;
}

.settings-page .settings-upload-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  height: 100%;
  padding: 14px;
  border-radius: 10px;
  background: #eceef2;
  border: 1px solid var(--settings-border, rgba(7, 36, 81, 0.08));
}

.settings-page .settings-upload-card .settings-field-label,
.settings-page .settings-upload-card .user-pref-label {
  flex-shrink: 0;
}

.settings-page .settings-upload-card-preview {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 72px;
  margin-bottom: var(--settings-label-gap, 8px);
  padding: 10px;
  border-radius: 8px;
  background: #e2e5eb;
}

.settings-upload-card-preview img {
  max-width: 100%;
  max-height: 64px;
  object-fit: contain;
}

.settings-upload-preview-logo {
  width: 175px;
  max-height: 40px;
}

.settings-upload-preview-mini,
.settings-upload-preview-pwa {
  max-width: 56px;
  max-height: 56px;
}

.settings-upload-preview-favicon {
  width: 32px;
  height: 32px;
}

.settings-upload-preview-zhenya {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  object-fit: cover;
}

.settings-upload-card-actions {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.settings-page .settings-col-field {
  height: 100%;
}

.settings-page .settings-col-field .user-pref-chips {
  flex-wrap: wrap;
}

.settings-signin-bg-preview {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 10;
  min-height: 88px;
  border-radius: 8px;
  overflow: hidden;
  background: #e2e5eb;
}

.settings-signin-bg-preview video,
.settings-signin-bg-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.settings-signin-bg-preview .settings-signin-bg-empty {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
}

.settings-signin-bg-upload .upload-file-button {
  width: 100%;
}

.settings-page .settings-row-4 .settings-col-field .user-pref-chip-btn,
.settings-page .settings-row-5 .settings-col-field .user-pref-chip-btn {
  font-size: 11px;
  padding: 6px 10px;
}

.settings-page .user-pref-chip-btn {
  font-size: 12px;
  font-weight: 500;
}

.settings-page .card-footer {
  padding: 14px var(--settings-pad-x, 28px);
  border-top: 1px solid var(--settings-border, rgba(7, 36, 81, 0.08));
  background: #fafbfd;
}

.settings-row-5 .settings-col-field .form-control {
  max-width: 100%;
}

.settings-files-row .settings-col-field .form-control {
  max-width: 100%;
}

.settings-files-row .settings-file-preview-chips .user-pref-chips {
  display: flex;
  flex-wrap: nowrap;
  gap: 6px;
  width: 100%;
}

.settings-files-row .settings-file-preview-chips .user-pref-chip {
  flex: 1 1 0;
  min-width: 0;
}

.settings-files-row .settings-file-preview-chips .user-pref-chip-btn {
  display: block;
  width: 100%;
  font-size: 11px;
  padding: 6px 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: center;
}

@media (min-width: 1200px) {
  .settings-files-row > [class*="col-xl-5"] {
    flex: 0 0 auto;
    width: 41.66666667%;
  }

  .settings-files-row > [class*="col-xl-3"] {
    flex: 0 0 auto;
    width: 25%;
  }

  .settings-files-row > [class*="col-xl-2"] {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
}

.settings-files-row .onlyoffice-settings-col.is-dimmed {
  opacity: 0.45;
  pointer-events: none;
}

.settings-files-row .onlyoffice-settings-col.is-dimmed .form-control {
  background-color: #f4f6f9;
}

@media (max-width: 767px) {
  .settings-page {
    --settings-pad-x: 16px;
    --settings-pad-y: 18px;
    --settings-section-gap: 22px;
    --settings-block-gap: 18px;
  }

  .settings-page .settings-row-3 .col-md-4,
  .settings-page .settings-row-4 > [class*="col-"] {
    margin-bottom: 0;
  }
}

.dashboard-header-bar-wrap {
  display: flex;
  justify-content: flex-start;
  width: 100%;
  clear: both;
}
.dashbaord-header-area {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
  max-width: 100%;
  min-height: 42px;
  padding: 5px 8px 5px 14px;
  background: #ffffff;
  border: 1px solid rgba(7, 36, 81, 0.14);
  border-radius: 15px;
}
.dashbaord-header-area .dashboard-header-main {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding-right: 4px;
  flex-shrink: 0;
}
.dashbaord-header-area .dashboard-header-active-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  flex-shrink: 0;
  border: 1px solid rgba(7, 36, 81, 0.2);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.35);
}
.dashbaord-header-area .dashboard-header-title {
  margin: 0;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  color: #072451;
  white-space: nowrap;
}
.dashbaord-header-area .dashboard-header-divider {
  width: 1px;
  align-self: stretch;
  min-height: 22px;
  margin: 4px 12px;
  background: #e8eaf0;
  flex-shrink: 0;
}
.dashbaord-header-area .dashboard-header-switcher {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  padding: 2px 4px 2px 0;
}
.dashbaord-header-area .dashboard-swatch-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
  text-decoration: none;
}
.dashbaord-header-area .dashboard-swatch {
  display: block;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: 2px solid transparent;
  box-sizing: border-box;
  transition: transform 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}
.dashbaord-header-area .dashboard-swatch--default {
  border-color: rgba(7, 36, 81, 0.18);
}
.dashbaord-header-area .dashboard-swatch-link:hover .dashboard-swatch {
  transform: scale(1.08);
}
.dashbaord-header-area .dashboard-swatch.is-active {
  border-color: #072451;
  box-shadow: 0 0 0 2px rgba(74, 144, 217, 0.22);
}
.dashbaord-header-area .dashboard-header-actions {
  display: inline-flex;
  align-items: center;
  margin-left: 6px;
  flex-shrink: 0;
}
.dashbaord-header-area .dashboard-header-more-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  min-width: 32px;
  padding: 0;
  margin: 0;
  border-radius: 10px;
}
.dashbaord-header-area .dashboard-header-more-btn svg {
  margin: 0;
}
.dashbaord-header-area a:hover .color-tag {
  transform: none;
}
.alert-warning a {
  color: #fff !important;
}
.app-modal-fixed-close-button {
  position: absolute;
  z-index: 1;
  right: 15px !important;
  background: rgb(255 169 0);
  color: #072451;
  border-radius: 50%;
  text-align: center;
  padding: 2px !important;
  height: 70px;
  width: 70px;
  top: 10px !important;
  font-size: 45px !important;
}
.post-dropzone {
  background: #fff;
  border-radius: 15px;
}
.project-title-left { flex: 1 1 auto; min-width: 0; }
.project-title-button-group-section { flex: 0 0 auto; }
.project-status-line { display:inline-block; margin-right:.5rem; }

/* Шапка проекта: layout и звезда — vst-page-layout.css (.vst-detail-page-header__identity) */
.project-details-view .project-title-section .project-title-button-group-section {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  padding: 8px 0;
}
.project-details-view .project-title-section .project-title-button-group-section .title-button-group {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px;
}
.project-details-view .project-title-section .project-title-button-group-section .title-button-group .btn,
.project-details-view .project-title-section .project-title-button-group-section .title-button-group .btn-group .dropdown-toggle {
  margin: 0;
}
#default-navbar .nav-jenya .jenya-avatar {
  width: 36px;
  height: 36px;
  display: block;
  flex-shrink: 0;
  box-sizing: border-box;
  border-radius: 50%;
  border: 0;
  box-shadow: none;
  overflow: hidden;
  line-height: 0;
  background-color: transparent;
}
#default-navbar .nav-jenya .jenya-avatar:has(.vst-zhenya-orb--photo) {
  width: 42px;
  height: 42px;
}
#default-navbar .nav-jenya .jenya-avatar img,
#default-navbar .nav-jenya .jenya-avatar video,
#default-navbar .nav-jenya .jenya-avatar .vst-zhenya-orb {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center top;
  border: 0;
  border-radius: 0;
  margin: 0;
  padding: 0;
}
#default-navbar .navbar-nav .nav-jenya a.nav-link {
  display: flex;
  align-items: center;
  padding: 6px 8px !important;
}
#default-navbar #topbar-back-btn-wrap {
  display: flex;
  align-items: center;
  padding: 0 4px 0 8px;
  margin-left: -10px;
}
#default-navbar .navbar-nav #topbar-back-btn {
  min-width: 40px;
  height: 40px;
  padding: 0 10px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.15s ease, transform 0.15s ease;
}
#default-navbar .navbar-nav #topbar-back-btn:hover,
#default-navbar .navbar-nav #topbar-back-btn:focus {
  transform: none;
  background-color: rgba(7, 36, 81, 0.08);
}
#default-navbar .navbar-nav #topbar-back-btn:active {
  transform: scale(0.97);
}
#default-navbar .navbar-nav .sidebar-toggle-btn {
  padding-left: 6px !important;
  padding-right: 6px !important;
}
#default-navbar .navbar-nav #project-timer-icon {
  padding: 8px 10px !important;
}
#default-navbar .navbar-nav #project-timer-icon .animated-clock-wrap {
  margin: 0;
}

.cirr {
border:1px solid #072451;
border-radius:10px;
padding:3px;
background:#072451;
color:#fff !important;
}
.cirr2 {
color:#072451 !important;
font-weight:800;
}
/* Женя — внутри шапки вкладок (проект / заказчик) */
#project-tabs.project-tabs-with-assistant,
#lead-view-tabs.lead-tabs-with-assistant,
#lead-project-view-tabs.lead-tabs-with-assistant,
#claim-view-tabs.lead-tabs-with-assistant {
  flex-wrap: nowrap;
  align-items: center;
}
.kb-article-view-header.lead-tabs-with-assistant .kb-article-jenya-assistant.project-jenya-assistant-tab {
  margin: 0 4px 0 0 !important;
  display: inline-flex;
  align-items: center;
  vertical-align: middle;
}
#project-tabs.project-tabs-with-assistant > .nav-item:not(.project-jenya-assistant-tab) {
  flex: 0 0 auto;
}
.project-jenya-assistant-tab {
  flex: 0 0 auto;
  margin: 0 0 0 auto !important;
  padding: 0 2px 0 6px !important;
  align-self: center;
  line-height: 0;
  overflow: visible;
}
.project-jenya-assistant-tab::after,
.project-jenya-assistant-tab > .project-jenya-assistant__trigger::after {
  display: none !important;
  content: none !important;
}
body[data-color="F2F2F2"] .project-details-view #project-tabs .project-jenya-assistant-tab > .project-jenya-assistant__trigger,
body[data-color="F2F2F2"] .lead-view-page #lead-view-tabs .project-jenya-assistant-tab > .project-jenya-assistant__trigger,
body[data-color="F2F2F2"] .lead-view-page #lead-project-view-tabs .project-jenya-assistant-tab > .project-jenya-assistant__trigger,
body[data-color="F2F2F2"] .claim-details-view #claim-view-tabs .project-jenya-assistant-tab > .project-jenya-assistant__trigger,
body[data-color="F2F2F2"] .kb-article-detail-page .kb-article-view-header .project-jenya-assistant-tab > .project-jenya-assistant__trigger,
.project-jenya-assistant-tab > .project-jenya-assistant__trigger {
  position: relative;
  display: inline-block;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  line-height: 0;
  min-height: 0;
  height: auto;
  text-decoration: none !important;
  box-shadow: none !important;
  vertical-align: middle;
}
body[data-color="F2F2F2"] .project-details-view #project-tabs .project-jenya-assistant-tab > .project-jenya-assistant__trigger:hover,
body[data-color="F2F2F2"] .project-details-view #project-tabs .project-jenya-assistant-tab > .project-jenya-assistant__trigger:focus,
body[data-color="F2F2F2"] .lead-view-page #lead-view-tabs .project-jenya-assistant-tab > .project-jenya-assistant__trigger:hover,
body[data-color="F2F2F2"] .lead-view-page #lead-view-tabs .project-jenya-assistant-tab > .project-jenya-assistant__trigger:focus,
body[data-color="F2F2F2"] .lead-view-page #lead-project-view-tabs .project-jenya-assistant-tab > .project-jenya-assistant__trigger:hover,
body[data-color="F2F2F2"] .lead-view-page #lead-project-view-tabs .project-jenya-assistant-tab > .project-jenya-assistant__trigger:focus,
body[data-color="F2F2F2"] .claim-details-view #claim-view-tabs .project-jenya-assistant-tab > .project-jenya-assistant__trigger:hover,
body[data-color="F2F2F2"] .claim-details-view #claim-view-tabs .project-jenya-assistant-tab > .project-jenya-assistant__trigger:focus,
body[data-color="F2F2F2"] .kb-article-detail-page .kb-article-view-header .project-jenya-assistant-tab > .project-jenya-assistant__trigger:hover,
body[data-color="F2F2F2"] .kb-article-detail-page .kb-article-view-header .project-jenya-assistant-tab > .project-jenya-assistant__trigger:focus {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.project-jenya-assistant__avatar.vst-zhenya-orb {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 0;
  box-shadow: none;
  object-fit: cover;
  display: block;
  margin: 0;
  padding: 0;
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}
.project-jenya-assistant__avatar.vst-zhenya-orb--photo {
  width: 32px;
  height: 32px;
}
.project-jenya-assistant__avatar.vst-zhenya-orb:not(.vst-zhenya-orb--photo) {
  border: 2px solid rgba(7, 36, 81, 0.18);
  box-shadow: 0 1px 4px rgba(7, 36, 81, 0.1);
}
.project-jenya-assistant__btn {
  position: absolute;
  right: calc(100% + 6px);
  top: 50%;
  z-index: 2;
  transform: translateY(-50%) translateX(4px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  white-space: nowrap;
  transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
  box-shadow: 0 4px 14px rgba(7, 36, 81, 0.18);
  font-size: 12px;
  line-height: 1.2;
  padding: 4px 10px;
  margin: 0;
}
#project-tabs.project-tabs-with-assistant:hover .project-jenya-assistant__btn,
#project-tabs.project-tabs-with-assistant:focus-within .project-jenya-assistant__btn,
#lead-view-tabs.lead-tabs-with-assistant:hover .project-jenya-assistant__btn,
#lead-view-tabs.lead-tabs-with-assistant:focus-within .project-jenya-assistant__btn,
#lead-project-view-tabs.lead-tabs-with-assistant:hover .project-jenya-assistant__btn,
#lead-project-view-tabs.lead-tabs-with-assistant:focus-within .project-jenya-assistant__btn,
#claim-view-tabs.lead-tabs-with-assistant:hover .project-jenya-assistant__btn,
#claim-view-tabs.lead-tabs-with-assistant:focus-within .project-jenya-assistant__btn,
.kb-article-view-header.lead-tabs-with-assistant:hover .project-jenya-assistant__btn,
.kb-article-view-header.lead-tabs-with-assistant:focus-within .project-jenya-assistant__btn {
  opacity: 1;
  visibility: visible;
  transform: translateY(-50%) translateX(0);
  pointer-events: auto;
}
#project-tabs.project-tabs-with-assistant:hover .project-jenya-assistant__avatar,
#project-tabs.project-tabs-with-assistant:focus-within .project-jenya-assistant__avatar,
#lead-view-tabs.lead-tabs-with-assistant:hover .project-jenya-assistant__avatar,
#lead-view-tabs.lead-tabs-with-assistant:focus-within .project-jenya-assistant__avatar,
#lead-project-view-tabs.lead-tabs-with-assistant:hover .project-jenya-assistant__avatar,
#lead-project-view-tabs.lead-tabs-with-assistant:focus-within .project-jenya-assistant__avatar,
#claim-view-tabs.lead-tabs-with-assistant:hover .project-jenya-assistant__avatar,
#claim-view-tabs.lead-tabs-with-assistant:focus-within .project-jenya-assistant__avatar,
.kb-article-view-header.lead-tabs-with-assistant:hover .project-jenya-assistant__avatar,
.kb-article-view-header.lead-tabs-with-assistant:focus-within .project-jenya-assistant__avatar {
  transform: scale(1.06);
  box-shadow: 0 3px 10px rgba(7, 36, 81, 0.18);
}

/* Модалка Жени — обзор проекта / заказчика */
.project-assistant-mini-modal,
.project-assistant-wide-modal {
  max-width: 720px;
}
.project-assistant-modal {
  display: flex;
  flex-direction: column;
  min-height: 120px;
  max-height: 75vh;
}
.project-assistant-modal--with-form {
  max-height: 75vh;
}
.project-assistant-modal__log {
  flex: 1 1 auto;
  min-height: 120px;
  max-height: 75vh;
  overflow: auto;
  padding: 18px 22px;
}
.project-assistant-modal--with-form .project-assistant-modal__log {
  max-height: calc(75vh - 58px);
}
.project-assistant-modal__form {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  padding: 10px 14px;
  border-top: 1px solid #e8eaed;
  background: #fff;
}
.project-assistant-modal__form .form-control {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 14px;
}
.project-assistant-modal__question {
  margin: 0 0 10px auto;
  max-width: 92%;
  padding: 8px 12px;
  border-radius: 12px 12px 4px 12px;
  background: #eef3fb;
  color: #072451;
  font-size: 13px;
  line-height: 1.45;
  white-space: pre-wrap;
  word-break: break-word;
}
.project-assistant-modal__answer + .project-assistant-modal__question,
.project-assistant-modal__question + .project-assistant-modal__answer {
  margin-top: 14px;
}
.project-assistant-modal__answer {
  font-size: 14px;
  line-height: 1.55;
  color: #333;
  white-space: pre-wrap;
  word-break: break-word;
}
.project-assistant-modal__answer strong {
  font-weight: 700;
  color: #072451;
}
.project-assistant-modal__typing {
  display: inline-flex;
  gap: 4px;
  padding: 4px 0;
  color: #888;
}
.project-assistant-modal__typing span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #c5cad3;
  animation: project-asst-typing 1.2s infinite ease-in-out;
}
.project-assistant-modal__typing span:nth-child(2) {
  animation-delay: 0.15s;
}
.project-assistant-modal__typing span:nth-child(3) {
  animation-delay: 0.3s;
}
@keyframes project-asst-typing {
  0%, 80%, 100% { opacity: 0.35; transform: translateY(0); }
  40% { opacity: 1; transform: translateY(-2px); }
}
.proposal-preview-container {
  padding: 16px !important;
}
.proposal-preview {
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0;
}
.accordion-header .accordion-button {
  border-radius: 15px !important;
}
.accordion-header, .js-stage-toggle, .stage-block .accordion-button::before {
border-radius: 15px !important;
}
.accordion-item:first-of-type {
border-radius: 15px !important;
}
.btn-outline-lead {
border: 1px solid #ced4da;
background: #fff;
color: #495057;
transition: all .15s ease-in-out;
}
.btn-outline-lead:hover,
.btn-outline-lead:focus {
border-color: #062451;
background: #f8f9fa;
color: #062451;
}
.btn-outline-lead:active {
border-color: #062451;
background: #e9ecef;
color: #062451;
}
.btn-outline-lead-active {
border: 1px solid #092f6b;
background: #092f6b;
color: #fff;
font-weight: 600;
}
.btn-outline-lead-active:hover,
.btn-outline-lead-active:focus {
background: #d6e8ff;
border-color: #092f6b;
color: #0b5ed7;
}
.btn-outline-lead-active:active {
background: #092f6b;
border-color: #092f6b;
color: #fff;
}
.kanban-item-list {
  max-height: 730px;
  
  height: 100% !important;
  overflow: hidden;
}
/* Скролл при более 3 карточек в колонке   */
.kanban-item-list:has(.kanban-item:nth-child(n+4)) {
 
  overflow-y: auto;
}

.post-file-dropzone-scrollbar
{
height: 200px !important;
}
/* .general-form textarea {
  height: 300px;
}
.chat-message-textarea {
height: 80px;
} */
.vstteam-chat-wrapper:not(.vst-chat-v2-shell) {
width: 600px;
height: 660px;
  background: #ffffff;
  padding: 0px 10px 10px 10px;
  z-index: 10;
  position: fixed;
  bottom: 20px;
  right: 80px;
  box-shadow: 0px 5px 10px 2000px rgb(0 0 0 / 47%);
  border-radius: 20px !important;
}
.app-loader .loading {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: solid 2px #072451;
  border-top-color: #fff;
  animation: spin 0.5s infinite linear;
  -webkit-animation: spin 0.5s infinite linear;
  display: inline-block;
}
.vstteam-chat-body {
  height: 500px;
  overflow-y: scroll;
  overflow-x: hidden;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  &.full-height {
      height: 413px;
  }
  &.long {
      height: 412px;
  }
}
.chat-msg {
  padding: 5px 8px 7px;
  display: inline-block;
  max-width: 260px;
  text-align: left;
  word-break: break-word;
}
.v-buttons .btn { 
text-align: center;
height: 25px;
  line-height: 10px;
  }
body:not([data-color="F2F2F2"]) .modal {
 backdrop-filter:blur(5px);
}
.segment-icon-wrapper {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  overflow: hidden;
}
.segment-icon-wrapper img.segment-icon {
  width: 18px;
  height: 18px;
  object-fit: contain;
  display: block;
}
#fm-multibar{
position: sticky;
top: 0;
z-index: 5;
display: flex;
align-items: center;
gap: 10px;
padding: 8px 10px;
margin-bottom: 10px;
border: 1px solid #E5E7EB;
border-radius: 10px;
background: #F9FAFB;
}
.fm-select{
position: absolute;
left: 8px;
top: 8px;
z-index: 2;
opacity: 0;
transform: scale(.96);
transition: opacity .15s ease, transform .12s ease;
}
.folder-item:hover .fm-select{ opacity: 0; transform: scale(1); }
#file-manager-window-area.fm-ms .fm-select{ opacity: 1; transform: scale(1); }
.folder-item.selected{
box-shadow: 0 0 0 2px #3B82F6, 0 2px 10px rgba(0,0,0,.06);
border-color: #93C5FD;
background-image: linear-gradient(0deg, rgba(59,130,246,.06), rgba(59,130,246,.06));
}
.folder-item.selected .fm-top-icon i{ color:#2563EB; }
#file-manager-window-area.fm-ms .folder-item-content:hover{
filter: none;
}
#file-manager-window-area.fm-ms .folder-item[data-type="file"]{
cursor: default;
}
.file-manager-more-menu{ top: 8px; right: 8px; }
:root{
--fm-card-min: 150px;
--fm-gap: 12px;
--fm-icon-size: 52px;
--fm-icon-box: 66px;
--fm-title-size: 12.5px;
}
#file-manager-window-area.fm-compact{
--fm-card-min: 135px;
--fm-gap: 10px;
--fm-icon-size: 46px;
--fm-icon-box: 58px;
--fm-title-size: 12px;
}
#file-manager-window-area.fm-ultra-compact{
--fm-card-min: 120px;
--fm-gap: 8px;
--fm-icon-size: 40px;
--fm-icon-box: 52px;
--fm-title-size: 11.5px;
}
.files-and-folders-list {
  display: grid;
  grid-gap: var(--fm-gap);
  grid-template-columns: repeat(auto-fill, minmax(var(--fm-card-min), 1fr));
  padding-left: 0;
  list-style: none;
}
.folder-item {
  position: relative;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 14px;
  background: #fff;
  padding: 6px 8px 8px;
  min-height: calc(var(--fm-icon-box) + 56px);
  transition: box-shadow .15s ease, transform .08s ease, background-color .2s ease, border-color .2s ease;
  text-align: center;
}
.folder-item:hover { box-shadow: 0 2px 10px rgba(0,0,0,.06); }
.folder-item-content { display: flex; flex-direction: column;  }
.folder-item-content.focus { filter:contrast(1.15); }
.folder-item-content:hover {
  filter: contrast(1.15);
  background: none;
  transition: color 100ms ease-in-out, background-color 100ms ease-in-out;
}
.card-kite   { background: #F0F8FF; border-color: #C7E3FF; }
.card-amber  { background: #FFF7E6; border-color: #FFE2B8; }
.card-lavender{background:#F5F0FF; border-color: #E0D6FF; }
.card-rose   { background: #FFEFF0; border-color: #FFD5D9; }
.card-sky    { background: #EDF7FF; border-color: #CFE8FF; }
.card-mint   { background: #ECFDF5; border-color: #CFF7E6; }
.card-sunset { background: #FFF3EC; border-color: #FFD7C2; }
.card-stone  { background: #F3F4F6; border-color: #E5E7EB; }
.card-honey  { background: #FFF6CC; border-color: #FFE88A; }
.card-indigo { background: #EEF2FF; border-color: #D4D9FF; }
.card-folder { background: #FFFBEA; border-color: #d97707; }
.card-project { background: #E8F2FC; border-color: #7BABE8; }
.card-default{ background: #FAFAFA; border-color: #EAEAEA; }
.folder-item.card-kite   .fm-top-icon i { color: #3B82F6; }
.folder-item.card-amber  .fm-top-icon i { color: #F59E0B; }
.folder-item.card-lavender .fm-top-icon i { color: #8B5CF6; }
.folder-item.card-rose   .fm-top-icon i { color: #EF4444; }
.folder-item.card-sky    .fm-top-icon i { color: #0EA5E9; }
.folder-item.card-mint   .fm-top-icon i { color: #10B981; }
.folder-item.card-sunset .fm-top-icon i { color: #FB923C; }
.folder-item.card-stone  .fm-top-icon i { color: #6B7280; }
.folder-item.card-honey  .fm-top-icon i { color: #CA8A04; }
.folder-item.card-indigo .fm-top-icon i { color: #6366F1; }
.folder-item.card-folder .fm-top-icon i { color: #D97706; }
.folder-item.card-project .fm-top-icon i { color: #4a90d9; }
.folder-item.card-default .fm-top-icon i { color: #374151; }
.fm-top-icon { display:flex; align-items:center; justify-content:center; height: var(--fm-icon-box); }
.fm-top-icon .fa-solid,
.fm-top-icon .fa-regular,
.fm-top-icon .fa-brands { font-size: var(--fm-icon-size); line-height: 1; }
.fm-title {
  position: relative;
  font-size: var(--fm-title-size);
  font-weight: 600;
  line-height: 1.3;
  overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
}
.fm-title .marquee { display: inline-block; will-change: transform; }
.folder-item:hover .fm-title.marquee-wrap .marquee { animation: fm-marquee 8s linear infinite; }
@keyframes fm-marquee {
  0%,10% { transform: translateX(0); }
  50%,90%{ transform: translateX(-60%); }
  100%   { transform: translateX(0); }
}
.fm-meta   { font-size: 12px; color: #6b7280; }
.fm-subtle { font-size: 11px; color: #9CA3AF; }
.file-manager-more-menu { position:absolute; right:8px; top:8px; opacity:.9; }
.file-manager-more-menu .fa-ellipsis-h { font-size: 18px; }
.fm-folder-badge-common {
  position: absolute;
  top: 45px;
  right: 72px;
  font-size: 14px;
  color: #D97706;
  z-index: 1;
  line-height: 1;
  pointer-events: none; /* клик проходит к карточке папки */
}
.fm-folder-badge-common i { color: inherit; }
.folder-item.card-folder .fm-folder-badge-common { color: #D97706; }
.fm-folder-badge-project {
  position: absolute;
  top: 46px;
  right: 70px;
  font-size: 11px;
  color: #4a90d9;
  z-index: 1;
  line-height: 1;
  pointer-events: none;
}
.fm-folder-badge-project .fm-feather-badge,
.fm-folder-badge-project svg { color: #4a90d9; stroke: #4a90d9; width: 18px; height: 18px; }
.folder-item.card-project .fm-folder-badge-project,
.folder-item.card-project .fm-folder-badge-project svg { color: #4a90d9; stroke: #4a90d9; }
.fm-empty {
  grid-column: 1 / -1; text-align: center; color: #9CA3AF; padding: 24px 8px;
  border: 1px dashed #E5E7EB; border-radius: 8px; background: #FCFCFD;
}
.fm-section-divider {
  grid-column: 1 / -1;
  list-style: none;
  margin: 0;
  padding: 10px 0 6px 0;
  border-bottom: 1px solid #E5E7EB;
  font-size: 12px;
  font-weight: 600;
  color: #6B7280;
}
.fm-section-divider:first-child { padding-top: 0; }
.fm-section-divider span { padding-left: 2px; }
.folder-item.dragging { opacity: .6; }
.folder-item.drop-target { outline: 2px dashed #60a5fa; outline-offset: -6px; }
.folder-item.drop-target .fm-top-icon i { transform: scale(1.05); }
.breadcrumb-folder-item.breadcrumb-drop-hint {
background: rgba(59,130,246,.1); 
border-radius: 6px;
transition: background .2s ease;
}
.breadcrumb-folder-item.drop-target {
background: rgba(59,130,246,.2);
box-shadow: inset 0 0 0 2px #3b82f6; 
}
.file-manager-preview-section {
  margin-bottom: 10px;
  max-height: 70vh !important;
}
iframe {
  
  border-radius: 15px !important; 
}
.folder-item.card-comment { 
background: #F8FAFC; 
border-color: #E2E8F0; 
}
.folder-item.card-comment .fm-top-icon i { color: #64748B; }
.folder-item.card-virtual-comments { 
  background: #fdfaff;
  border-color: #dbc7e9;
}
.folder-item.card-virtual-comments .fm-top-icon i { color: #dbc7e9; }
.fm-badge{
display:inline-block;
margin-top:4px;
padding:2px 6px;
font-size:10.5px;
color:#334155;
background:#E2E8F0;
border-radius:6px;
}
.sidebar-menu li.sub-active > a {
font-weight: 800;
  color: #fff !important; 
  background:none !important;
  border-radius:0px;
  border-left: 2px solid #ffab00;
  margin:0px !important;
  margin-left:20px !important;
}
.missed-reminder {
border: 1px solid #f5325c;
display: inline-block;
padding: 10px;
border-radius: 15px;
background: #f5325c11;
min-width: 330px;
}

/* Кликабельные строки таблицы лидов */
#lead-table tbody tr {
  cursor: pointer;
}

#lead-table tbody tr:hover {
  background-color: #f8f9fa;
}

/* Исключения для кликабельных элементов */
#lead-table tbody tr a[href^="mailto:"],
#lead-table tbody tr a[href^="tel:"],
#lead-table tbody tr .edit,
#lead-table tbody tr .delete,
#lead-table tbody tr .option {
  cursor: default;
}

#lead-table tbody tr a[href^="mailto:"]:hover,
#lead-table tbody tr a[href^="tel:"]:hover {
  cursor: pointer;
}

/* Динамический фильтр причин отказа */
.filter-item-box.hidden {
  display: none !important;
}

.filter-item-box.hidden .select2-container {
  display: none !important;
}

.filter-item-box.hidden select {
  display: none !important;
}

/* Стили для недоступных пунктов меню в настройках */
.no-drag-item {
  cursor: not-allowed !important;
  opacity: 0.6 !important;
  background-color: #f8f9fa !important;
}

.no-drag-item:hover {
  opacity: 0.6 !important;
  background-color: #f8f9fa !important;
}

.no-drag-item .icon-16 {
  color: #dc3545 !important;
}

/* Карточка заказчика view_lead — layout шапки в vst-page-layout.css */
.lead-view-page__identity {
  flex: 1 1 auto;
  min-width: 0;
}

.lead-view-page .leads-page-title h1,
.lead-view-page .lead-view-page__title {
  float: none;
  padding: 0 !important;
  margin: 0;
  line-height: 1.3;
}

.lead-view-page__title {
  flex: 0 1 auto;
  min-width: 0;
}

.lead-view-page__type-badge {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  font-size: 11px;
  font-weight: 600;
  padding: 3px 8px;
  border-radius: 6px;
  line-height: 1;
}

.lead-view-page__status:empty {
  display: none;
}

/* Кнопки в шапке: gap 10px — как vst-detail-page-header (vst-page-layout.css) */
.lead-view-page .vst-detail-page-header .title-button-group .btn-group,
.leads-page-title.vst-detail-page-header .title-button-group .btn-group {
  margin: 0;
}

/* Розничная заявка */
.btn-add-application,
a.btn-add-application,
.btn-add-retail-client,
a.btn-add-retail-client {
  background-color: #d5223c !important;
  border-color: #d5223c !important;
  color: #fff !important;
  transition: filter 0.2s ease;
}

.btn-add-application:hover,
a.btn-add-application:hover,
.btn-add-retail-client:hover,
a.btn-add-retail-client:hover {
  filter: brightness(0.9);
}

/* Новый проект */
.btn-new-project,
a.btn-new-project {
  background-color: #4a90d9 !important;
  border-color: #4a90d9 !important;
  color: #fff !important;
  transition: filter 0.2s ease;
}

.btn-new-project:hover,
a.btn-new-project:hover {
  filter: brightness(0.9);
}

/* ========== КАНБАН: розничные заявки и проекты ========== */
.lead-project-card,
.client-project-card {
  background: #fff;
  transition: transform 0.18s ease, box-shadow 0.18s ease, background-color 0.2s ease, border-color 0.25s ease;
  width: 95%;
  border: 1px solid transparent;
  border-radius: 20px;
  box-shadow: 0 1px 2px rgba(0,0,0,0.04);
  padding: 12px;
  margin: 6px auto;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}

.lead-project-card:hover,
.client-project-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0,0,0,0.12);
}

.lead-project-card .project-title,
.client-project-card .project-title {
  font-weight: 700;
  margin-bottom: 4px;
  color: #333;
  font-size: 14px;
  line-height: 1.4;
}

.lead-project-card .project-id,
.client-project-card .project-id {
  font-size: 12px;
  color: #666;
  margin-top: 4px;
}

.kanban-container {
  margin-top: 0;
  margin-bottom: 0;
  min-height: 200px !important;
}
body:not([data-color="F2F2F2"]) .kanban-container {
  background: #fff;
  border: 1px solid #fff;
  border-radius: 20px !important;
  border-top: none;
}

#kanban-container {
  max-height: 530px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

#kanban-projects-container {
  max-height: 530px;
  overflow: hidden;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.kanban-col-title {
  border: 1px solid var(--status-color, #2e4053);
  background: var(--status-color, #2e4053);
  background: color-mix(in srgb, var(--status-color, #2e4053) 44%, transparent);
}

.lead-project-card.kanban-item,
.client-project-card.kanban-item {
  border-color: var(--status-color, #2e4053);
}

.kanban-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 300px;
  padding: 40px;
}

.kanban-empty-state .kanban-empty-text {
  font-size: 16px;
  color: #666;
  margin-bottom: 20px;
}

/* Переключатель канбана — две отдельные кнопки по центру */
.kanban-tabs-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  margin-bottom: 0;
}

.kanban-tab-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0.35rem 0.85rem;
  font-size: 0.8125rem;
  font-weight: 500;
  border-radius: 10px;
  border: 1px solid;
  background: transparent;
  cursor: pointer;
  white-space: nowrap;
  transition: filter 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.kanban-tab-btn__icon,
.kanban-tab-btn svg {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}

.kanban-tab-btn:hover {
  filter: brightness(0.9);
}

/* Розничные заявки — #d5223c */
.kanban-tab-retail {
  border-color: #d5223c;
  color: #d5223c;
}
.kanban-tab-retail.active {
  background-color: #d5223c;
  border-color: #d5223c;
  color: #fff;
}

/* Цветная линия снизу: Проекты / Розница / Рекламации — всегда 1px (активность — чип в vst-tabs.css) */
.leads-details-view .scrollable-tabs li a[data-bs-target="#lead-projects"]::after {
  background-color: #4a90d9 !important;
  height: 1px !important;
  width: 60% !important;
  left: 20% !important;
  transform: scaleX(1) !important;
}
.leads-details-view .scrollable-tabs li a[data-bs-target="#lead-retail"]::after {
  background-color: #d5223c !important;
  height: 1px !important;
  width: 60% !important;
  left: 20% !important;
  transform: scaleX(1) !important;
}
.leads-details-view .scrollable-tabs li a[data-bs-target="#lead-claims"]::after {
  background-color: #ff4747 !important;
  height: 1px !important;
  width: 60% !important;
  left: 20% !important;
  transform: scaleX(1) !important;
}

/* Бейджи типа клиента (розничный/проектный/смешанный/дилер) */
.badge-client-project { background-color: #4a90d9; color: #fff; }
.badge-client-retail { background-color: #d5223c; color: #fff; }
.badge-client-mixed {
    background: linear-gradient(90deg, #4a90d9, #d5223c);
    color: #fff;
}
.badge-client-dealer { background-color: #ff00ba; color: #fff; }

/* Проекты — #4a90d9 */
.kanban-tab-projects {
  border-color: #4a90d9;
  color: #4a90d9;
}
.kanban-tab-projects.active {
  background-color: #4a90d9;
  border-color: #4a90d9;
  color: #fff;
}

/* Рамка карточки канбана по цвету активной вкладки */
#kanban-card-container {
  border-width: 1px;
  transition: border-color 0.2s ease;
}
#kanban-card-container.kanban-card-retail {
  border-color: #d5223c;
}
#kanban-card-container.kanban-card-projects {
  border-color: #4a90d9;
}

#kanban-tab-content {
  padding-top: 0;
}

.lead-projects-table-wrapper {
  overflow-x: auto;
  width: 100%;
}

#lead-projects-table {
  min-width: 2800px;
}

/* Канбан подразделений (вкладка Подразделения в leads/view_lead) */
.departments-kanban-wrapper .departments-kanban-scroll {
  overflow-x: auto;
  overflow-y: hidden;
  padding: 15px;
}
.departments-kanban-wrapper .kanban-container {
  min-width: min-content;
  display: flex;
  flex-wrap: nowrap;
  gap: 15px;
}
.departments-kanban-wrapper .kanban-col {
  flex: 0 0 280px;
  min-width: 280px;
  max-width: 280px;
}
.departments-kanban-wrapper.departments-cols-stretch .departments-kanban-scroll {
  overflow-x: hidden;
}
.departments-kanban-wrapper.departments-cols-stretch .kanban-container {
  width: 100%;
  min-width: 0;
}
.departments-kanban-wrapper.departments-cols-stretch .kanban-col {
  flex: 1 1 0;
  min-width: 0;
  max-width: none;
}
.departments-kanban-wrapper .dept-col-title-no-dept {
  background: #6c757d;
  border-color: #6c757d;
  color: #fff;
}
.departments-kanban-wrapper .dept-contact-card.kanban-item {
  cursor: grab;
  display: flex;
  flex-direction: column;
  width: 100%;
  margin: 0 0 8px;
  padding: 0;
  border-radius: 12px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  background: #fff;
  color: inherit;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  transition: box-shadow 0.18s ease, border-color 0.18s ease, transform 0.12s ease;
  max-width: 100%;
  min-width: 0;
}
.departments-kanban-wrapper .dept-contact-card.kanban-item:hover {
  border-color: rgba(15, 23, 42, 0.12);
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.08);
}
.departments-kanban-wrapper .dept-contact-card--inactive {
  opacity: 0.45;
}
.departments-kanban-wrapper .dept-contact-status {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-top: 2px;
  cursor: default;
}
.departments-kanban-wrapper .dept-contact-status .form-check-input {
  margin-top: 0;
  cursor: pointer;
}
.departments-kanban-wrapper .dept-contact-status-label {
  font-size: 12px;
  line-height: 1.2;
  cursor: pointer;
  user-select: none;
}
.departments-kanban-wrapper .dept-contact-status-readonly {
  font-size: 12px;
  line-height: 1.2;
}
.departments-kanban-wrapper .dept-contact-card-inner {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 12px;
  max-width: 100%;
  min-width: 0;
}
.departments-kanban-wrapper .dept-contact-card-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  min-width: 0;
  text-align: center;
}
.departments-kanban-wrapper .dept-contact-card-meta {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  min-width: 0;
  width: 100%;
}
.departments-kanban-wrapper .dept-contact-name {
  font-size: 16px;
  font-weight: 800;
  line-height: 1.25;
  color: #111827;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
}
.departments-kanban-wrapper .dept-contact-job-wrap.dept-contact-job {
  font-size: 11px;
  font-weight: 400;
  line-height: 1.35;
  color: #6b7280;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  white-space: normal;
  word-break: break-word;
  overflow-wrap: anywhere;
  width: 100%;
}
.departments-kanban-wrapper .dept-primary-badge {
  display: inline-block;
  margin: 0 0 2px;
  padding: 2px 8px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.3;
  border: none;
  background: rgba(6, 36, 81, 0.1);
  color: #062451;
  border-radius: 999px;
}
.departments-kanban-wrapper .dept-contact-card .dept-contact-avatar {
  border-radius: 50%;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.departments-kanban-wrapper .dept-contact-card .dept-contact-avatar .avatar-sm {
  width: 48px;
  height: 48px;
  font-size: 18px;
}
.departments-kanban-wrapper .dept-contact-card .dept-contact-avatar .avatar-sm.avatar-initials {
  font-size: 18px;
  font-weight: 700;
}
.departments-kanban-wrapper .dept-contact-card .dept-contact-avatar img {
  width: 48px;
  height: 48px;
  object-fit: cover;
}
.departments-kanban-wrapper .dept-contact-info {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  min-width: 0;
  width: 100%;
  padding-top: 8px;
  border-top: 1px solid rgba(15, 23, 42, 0.06);
  text-align: center;
}
.departments-kanban-wrapper .dept-contact-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 0;
  max-width: 100%;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  color: #1f2937;
  text-decoration: none;
}
.departments-kanban-wrapper .dept-contact-link:hover {
  color: #111827;
}
.departments-kanban-wrapper .dept-contact-link span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  line-height: 1.2;
}
.departments-kanban-wrapper .dept-contact-info .icon-14 {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  color: #6b7280;
  display: block;
  margin: 0;
}
.departments-kanban-wrapper .dept-item-list {
  min-height: 80px;
}
/* Одно подразделение или без — контакты по 4 в строку (только ПК) */
@media (min-width: 768px) {
  .departments-kanban-wrapper.departments-contacts-grid-4 .dept-item-list {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    align-content: start;
    overflow-y: auto;
  }
  .departments-kanban-wrapper.departments-contacts-grid-4 .dept-contact-card.kanban-item {
    margin: 0;
  }
}
/* Шапка колонки: название по центру, иконки при наведении */
.departments-kanban-wrapper .kanban-col-title.dept-col-title-hover {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  text-align: center;
}
.departments-kanban-wrapper .dept-col-title-text {
  flex: 1;
  text-align: center;
}
.departments-kanban-wrapper .dept-col-actions {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  transition: opacity 0.2s;
  display: flex;
  gap: 2px;
}
.departments-kanban-wrapper .kanban-col-title:hover .dept-col-actions {
  opacity: 1;
}
.departments-kanban-wrapper .dept-color-dot {
  display: none;
}

/* Виджет контактов — бейдж подразделения, аккордион */
.lead-contacts-widget .fw-semibold .lead-contact-dept-badge {
  font-size: 11px;
  margin-top: 0px;
  padding: 2px 6px;
}
.lead-contacts-widget .lead-contact-avatar {
  box-sizing: border-box;
  border-radius: 50%;
  overflow: hidden;
}
.lead-contacts-widget .lead-contacts-more-wrapper {
  margin-top: 4px;
  margin-bottom: 4px;
}
.lead-contacts-widget .lead-contacts-collapse-btn {
  margin-top: 4px;
  padding: 4px 0;
}

/* Виджет проектов заказчика (lead-projects-widget) */
.lead-projects-widget {
  height: 130px;
  margin-bottom: 0 !important;
  border: 1px solid #4a90d9;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.lead-projects-widget:hover {
  opacity: 0.9;
}
.lead-projects-widget .card-body {
  padding: 0.75rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
.lead-projects-widget .lead-projects-label {
  font-size: 0.75rem;
  color: #6c757d;
  text-align: center;
  margin-bottom: 0.25rem;
}
.lead-projects-widget .lead-projects-row-first {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
.lead-projects-widget .lead-projects-row-second {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.lead-projects-widget .lead-projects-row-second .lead-projects-item {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.lead-projects-widget .lead-projects-icon-main {
  width: 52px;
  height: 52px;
  border-radius: 15px;
  background-color: #4a90d9;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.lead-projects-widget .lead-projects-icon-main i,
.lead-projects-widget .lead-projects-icon-main svg {
  width: 1.75rem;
  height: 1.75rem;
  color: #fff !important;
  stroke: #fff !important;
}
.lead-projects-widget .lead-projects-icon-main svg {
  stroke-width: 2;
}
.lead-projects-widget .lead-projects-icon-sub {
  width: 16px;
  height: 16px;
  color: var(--bs-warning);
}
.lead-projects-widget .lead-projects-total {
  font-size: 2.25rem;
  font-weight: 700;
}

/* Виджет задач клиента (lead-tasks-widget) */
.lead-tasks-widget {
  height: 130px;
  margin-bottom: 0 !important;
  border: 1px solid #8b5cf6;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.lead-tasks-widget:hover {
  opacity: 0.9;
}
.lead-tasks-widget .card-body {
  padding: 0.75rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
.lead-tasks-widget .lead-tasks-label {
  font-size: 0.75rem;
  color: #6c757d;
  text-align: center;
  margin-bottom: 0.25rem;
}
.lead-tasks-widget .lead-tasks-row-first {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
.lead-tasks-widget .lead-tasks-row-second {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.lead-tasks-widget .lead-tasks-row-second .lead-tasks-item {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.lead-tasks-widget .lead-tasks-icon-main {
  width: 52px;
  height: 52px;
  border-radius: 15px;
  background-color: #8b5cf6;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.lead-tasks-widget .lead-tasks-icon-main i,
.lead-tasks-widget .lead-tasks-icon-main svg {
  width: 1.75rem;
  height: 1.75rem;
  color: #fff !important;
  stroke: #fff !important;
}
.lead-tasks-widget .lead-tasks-icon-main svg {
  stroke-width: 2;
}
.lead-tasks-widget .lead-tasks-icon-sub {
  width: 16px;
  height: 16px;
}
.lead-tasks-widget .lead-tasks-total {
  font-size: 2.25rem;
  font-weight: 700;
}

/* Виджет розничных заявок (lead-retail-widget) */
.lead-retail-widget {
  height: 130px;
  margin-bottom: 0 !important;
  border: 1px solid #d5223c;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.lead-retail-widget:hover {
  opacity: 0.9;
}
.lead-retail-widget .card-body {
  padding: 0.75rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
.lead-retail-widget .lead-retail-label {
  font-size: 0.75rem;
  color: #6c757d;
  text-align: center;
  margin-bottom: 0.25rem;
}
.lead-retail-widget .lead-retail-row-first {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
.lead-retail-widget .lead-retail-row-second {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.lead-retail-widget .lead-retail-row-second .lead-retail-item {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.lead-retail-widget .lead-retail-icon-main {
  width: 52px;
  height: 52px;
  border-radius: 15px;
  background-color: #d5223c;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.lead-retail-widget .lead-retail-icon-main i,
.lead-retail-widget .lead-retail-icon-main svg {
  width: 1.75rem;
  height: 1.75rem;
  color: #fff !important;
  stroke: #fff !important;
}
.lead-retail-widget .lead-retail-icon-main svg {
  stroke-width: 2;
}
.lead-retail-widget .lead-retail-icon-sub {
  width: 16px;
  height: 16px;
}
.lead-retail-widget .lead-retail-total {
  font-size: 2.25rem;
  font-weight: 700;
}

/* Виджет рекламаций (lead-claims-widget) */
.lead-claims-widget {
  height: 130px;
  margin-bottom: 0 !important;
  border: 1px solid #ff4747;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.lead-claims-widget:hover {
  opacity: 0.9;
}
.lead-claims-widget .card-body {
  padding: 0.75rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
.lead-claims-widget .lead-claims-label {
  font-size: 0.75rem;
  color: #6c757d;
  text-align: center;
  margin-bottom: 0.25rem;
}
.lead-claims-widget .lead-claims-row-first {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
.lead-claims-widget .lead-claims-row-second {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.lead-claims-widget .lead-claims-row-second .lead-claims-item {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.lead-claims-widget .lead-claims-icon-main {
  width: 52px;
  height: 52px;
  border-radius: 15px;
  background-color: #ff4747;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.lead-claims-widget .lead-claims-icon-main i,
.lead-claims-widget .lead-claims-icon-main svg {
  width: 1.75rem;
  height: 1.75rem;
  color: #fff !important;
  stroke: #fff !important;
}
.lead-claims-widget .lead-claims-icon-main svg {
  stroke-width: 2;
}
.lead-claims-widget .lead-claims-icon-sub {
  width: 16px;
  height: 16px;
}
.lead-claims-widget .lead-claims-total {
  font-size: 2.25rem;
  font-weight: 700;
}

.accordion-item {
  border: none;
}

/* Виджет "Закреплён за" — кликабельный аватар для назначения */
.lead-assigned-avatar-link {
  cursor: pointer;
}
.lead-assigned-avatar-link:hover {
  opacity: 0.85;
}

/* Виджет неоплаченных счетов (lead-unpaid-widget) */
.lead-unpaid-widget {
  height: 120px;
  margin-bottom: 0 !important;
}
.lead-unpaid-widget .card-body {
  padding: 1rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  height: 100%;
}
.lead-unpaid-widget .lead-unpaid-row-total {
  margin-bottom: 0.5rem;
}
.lead-unpaid-widget .lead-unpaid-label {
  font-size: 0.7rem;
  color: #6c757d;
  display: block;
}
.lead-unpaid-widget .lead-unpaid-row-total .lead-unpaid-total {
  font-size: 0.85rem;
  font-weight: 600;
}
.lead-unpaid-widget .lead-unpaid-row-unpaid .lead-unpaid-label {
  font-size: 0.75rem;
}
.lead-unpaid-widget .lead-unpaid-amount {
  font-size: 1.5rem;
  font-weight: 700;
}

/* project activity tabs: active = btn-primary */
.project-activity-tab-nav .nav-link.active {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
  color: #fff;
}

/* project activity log timeline */
.project-activity-log-wrapper .activity-log-wrapper {
  min-height: 615px;
  max-height: 800px;
  display: flex;
  flex-direction: column;
}
#project-timeline-container .project-activity-log-wrapper .activity-log-wrapper {
  min-height: 0;
  max-height: 850px;
  display: block;
}
#project-timeline-container .project-activity-log-wrapper .activity-log-wrapper > .card-body {
  display: block;
  overflow: hidden !important;
}
#project-timeline-container .project-activity-log-wrapper .activity-log-timeline {
  flex: 0 0 auto;
  min-height: 0;
  max-height: 850px;
  overflow-y: auto;
}
.project-activity-log-wrapper .activity-log-timeline {
  flex: 1 1 0;
  min-height: 0;
  overflow-x: auto;
  overflow-y: auto;
  padding: 8px 0 12px 0;
  scroll-behavior: smooth;
  scroll-snap-type: x proximity;
  -webkit-overflow-scrolling: touch;
}
.project-activity-log-wrapper .activity-log-timeline::-webkit-scrollbar {
  height: 6px;
  width: 6px;
}
.project-activity-log-wrapper .activity-log-timeline::-webkit-scrollbar-track {
  background: rgba(0,0,0,.04);
  border-radius: 3px;
}
.project-activity-log-wrapper .activity-log-timeline::-webkit-scrollbar-thumb {
  background: rgba(0,0,0,.15);
  border-radius: 3px;
}
.project-activity-log-wrapper .activity-timeline-track {
  display: flex;
  gap: 16px;
  padding: 0 12px 0 16px;
  min-width: min-content;
}
.project-activity-log-wrapper .activity-day-column {
  flex-shrink: 0;
  width: 300px;
  min-width: 300px;
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.project-activity-log-wrapper .activity-day-header {
  position: sticky;
  top: 0;
  z-index: 2;
  font-size: 11px;
  font-weight: 600;
  color: #374151;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  padding: 6px 10px;
  border: 1px solid rgba(7,36,81,.4);
  border-radius: 15px;
  margin-bottom: 4px;
  flex-shrink: 0;
  background: #fff;
}
.project-activity-log-wrapper .activity-day-header.today {
  color: #072451;
  border-color: rgba(7,36,81,.5);
}
.project-activity-log-wrapper .activity-day-header.yesterday {
  color: #6b7280;
}
.project-activity-log-wrapper .activity-card {
  position: relative;
  border: 1px solid rgba(0,0,0,.1);
  border-radius: 8px;
  padding: 8px 10px 10px 10px;
  background: #fff;
  font-size: 11px;
  overflow: visible;
}
.project-activity-log-wrapper .activity-card.acb-success { border-color: rgba(16,185,129,.4); }
.project-activity-log-wrapper .activity-card.acb-warning { border-color: rgba(245,158,11,.4); }
.project-activity-log-wrapper .activity-card.acb-danger { border-color: rgba(239,68,68,.4); }
.project-activity-log-wrapper .activity-card.acb-info { border-color: rgba(59,130,246,.4); }
.project-activity-log-wrapper .activity-card-row1 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 6px;
  padding-left: 38px;
}

.project-activity-log-wrapper .activity-card-row1 .action-indicator {
  position: absolute;
  top: -4px;
  left: -4px;
  width: 30px;
  height: 30px;
  min-width: 30px;
  min-height: 30px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid currentColor;
  overflow: hidden;
  box-sizing: border-box;
  padding: 0;
}
.project-activity-log-wrapper .action-indicator i,
.project-activity-log-wrapper .action-indicator svg {
  width: 16px !important;
  height: 16px !important;
  max-width: 16px !important;
  max-height: 16px !important;
  flex-shrink: 0;
  display: block;
  margin: 0;
  line-height: 0;
  object-fit: contain;
}
.project-activity-log-wrapper .ai-success { background: #fff; color:#10b981; }
.project-activity-log-wrapper .ai-warning { background: #fff; color:#f59e0b; }
.project-activity-log-wrapper .ai-danger { background: #fff; color:#ef4444; }
.project-activity-log-wrapper .ai-info { background: #fff; color:#3b82f6; }
.project-activity-log-wrapper .activity-card-meta {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 10.5px;
  color: #6b7280;
  line-height: 1;
}
.project-activity-log-wrapper .activity-card-meta span {
  display: inline-flex;
  align-items: center;
}
.project-activity-log-wrapper .activity-card-meta img {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  vertical-align: middle;
}
.project-activity-log-wrapper .activity-card-context {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  color: #4b5563;
  margin-bottom: 4px;
}
.project-activity-log-wrapper .activity-card-context i,
.project-activity-log-wrapper .activity-card-context svg {
  flex-shrink: 0;
  width: 12px;
  height: 12px;
  color: #6b7280;
}
/* иконка проекта (feather-command) — фон #4a90d9, белая иконка */
.project-activity-log-wrapper .activity-card-project > i,
.project-activity-log-wrapper .activity-card-project > svg {
  background: #4a90d9 !important;
  color: white !important;
  stroke: white !important;
  padding: 4px;
  border-radius: 4px;
  width: 14px !important;
  height: 14px !important;
  box-sizing: content-box;
}
.project-activity-log-wrapper .activity-card-project > svg {
  stroke: white !important;
}
/* иконка заказчика (feather-briefcase) — фон #072451, белая иконка */
.project-activity-log-wrapper .activity-card-client > i,
.project-activity-log-wrapper .activity-card-client > svg {
  background: #072451 !important;
  color: white !important;
  stroke: white !important;
  padding: 4px;
  border-radius: 4px;
  width: 14px !important;
  height: 14px !important;
  box-sizing: content-box;
}
.project-activity-log-wrapper .activity-card-client > svg {
  stroke: white !important;
}
.project-activity-log-wrapper .activity-card-context a {
  color: #103d80;
  font-weight: 600;
}
.project-activity-log-wrapper .activity-card-context a:hover {
  font-weight: 700;
  text-decoration: underline !important;
}
.project-activity-log-wrapper .activity-card-title {
  font-size: 11px;
  line-height: 1.4;
  margin: 0 0 6px 0;
  color: #111;
}
.project-activity-log-wrapper .activity-comment-snippet {
  display: block;
  margin-top: 4px;
  font-size: 10px;
  color: #6b7280;
  line-height: 1.35;
}
.project-activity-log-wrapper .activity-changes {
  font-size: 10px;
  color: #6b7280;
}
.project-activity-log-wrapper .activity-changes ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
.project-activity-log-wrapper .activity-changes li { margin: 2px 0; }
.project-activity-log-wrapper .activity-changes del { margin-right: 0.6em; }
.project-activity-log-wrapper .activity-changes ins { margin-left: 0.5em; }
.project-activity-log-wrapper .activity-nav-btn {
  width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid rgba(0,0,0,.15);
  border-radius: 6px;
  background: #fff;
  color: #374151;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background .15s, color .15s;
}
.project-activity-log-wrapper .activity-nav-btn:hover:not(:disabled) {
  background: rgba(59,130,246,.1);
  color: #1d4ed8;
}
.project-activity-log-wrapper .activity-nav-btn:disabled {
  opacity: 0.4;
  cursor: default;
}
.project-activity-log-wrapper .activity-nav-btn svg,
.project-activity-log-wrapper .activity-nav-btn .feather {
  width: 14px;
  height: 14px;
}

/* Starred projects widget: tighter spacing and client icon */
#starred-projects-container,
#open-projects-container {
  padding-top: 5px !important;
}
#starred-projects-container .starred-projects-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
#open-projects-container .starred-projects-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
#starred-projects-container .starred-projects-row {
  padding: 8px !important;
  border: 1px solid #f7f6fb;
  border-radius: 10px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
#open-projects-container .starred-projects-row {
  padding: 8px !important;
  border: 1px solid #f7f6fb;
  border-radius: 10px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
#starred-projects-container .starred-projects-title {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 5px;
  margin-bottom: 5px;
  line-height: 1.25;
  width: 100%;
  text-align: left;
}
#open-projects-container .starred-projects-title {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 5px;
  margin-bottom: 5px;
  line-height: 1.25;
  width: 100%;
  text-align: left;
}
#starred-projects-container .starred-projects-title-icon {
  width: 18px;
  height: 18px;
  border-radius: 6px;
  background: #4a90d9;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  flex-shrink: 0;
  margin-top: 1px;
}
#open-projects-container .starred-projects-title-icon {
  width: 18px;
  height: 18px;
  border-radius: 6px;
  background: #4a90d9;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  flex-shrink: 0;
  margin-top: 1px;
}
#starred-projects-container .starred-projects-title-icon i,
#starred-projects-container .starred-projects-title-icon svg {
  width: 11px;
  height: 11px;
  color: #fff;
  stroke: #fff;
}
#open-projects-container .starred-projects-title-icon i,
#open-projects-container .starred-projects-title-icon svg {
  width: 11px;
  height: 11px;
  color: #fff;
  stroke: #fff;
}
#starred-projects-container .starred-projects-title-link {
  line-height: 1.2;
}
#open-projects-container .starred-projects-title-link {
  line-height: 1.2;
}
#starred-projects-container .starred-projects-client {
  margin-bottom: 6px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 5px;
  line-height: 1.2;
  width: 100%;
  text-align: left;
}
#open-projects-container .starred-projects-client {
  margin-bottom: 6px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 5px;
  line-height: 1.2;
  width: 100%;
  text-align: left;
}
#starred-projects-container .starred-projects-client-icon {
  width: 18px;
  height: 18px;
  border-radius: 6px;
  background: #062451;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  flex-shrink: 0;
}
#open-projects-container .starred-projects-client-icon {
  width: 18px;
  height: 18px;
  border-radius: 6px;
  background: #062451;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  flex-shrink: 0;
}
#starred-projects-container .starred-projects-client-icon i,
#starred-projects-container .starred-projects-client-icon svg {
  width: 11px;
  height: 11px;
  color: #fff;
  stroke: #fff;
}
#open-projects-container .starred-projects-client-icon i,
#open-projects-container .starred-projects-client-icon svg {
  width: 11px;
  height: 11px;
  color: #fff;
  stroke: #fff;
}
#starred-projects-container .starred-projects-progress-row {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  margin-top: 1px;
  margin-left: 0 !important;
  padding-left: 0 !important;
  width: 100%;
}
#open-projects-container .starred-projects-progress-row {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  margin-top: 1px;
  margin-left: 0 !important;
  padding-left: 0 !important;
  width: 100%;
}
#starred-projects-container .starred-projects-progress-wrap {
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
}
#open-projects-container .starred-projects-progress-wrap {
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
}
#starred-projects-container .starred-projects-status {
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  width: 100%;
}
#open-projects-container .starred-projects-status {
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  width: 100%;
}
#starred-projects-container .starred-projects-progress {
  height: 6px;
  margin: 0;
}
#open-projects-container .starred-projects-progress {
  height: 6px;
  margin: 0;
}
@media (max-width: 991px) {
  #starred-projects-container .starred-projects-grid,
  #open-projects-container .starred-projects-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 575px) {
  #starred-projects-container .starred-projects-grid,
  #open-projects-container .starred-projects-grid {
    grid-template-columns: 1fr;
  }
}

/* ===== activity logs STACKED (projects/history) ===== */
.activity-logs-stacked .activity-changes ul {
  list-style-type: none;
  padding-left: 0;
  margin-left: 0;
}
.activity-logs-stacked .activity-card {
  position: relative;
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 15px;
  padding: 12px 14px 14px 14px;
  background: #fff;
  margin-bottom: 12px;
  transition: border-color .15s ease;
}
.activity-logs-stacked .activity-card.acb-success { border-color: rgba(16,185,129,.55); }
.activity-logs-stacked .activity-card.acb-warning { border-color: rgba(245,158,11,.55); }
.activity-logs-stacked .activity-card.acb-danger { border-color: rgba(239,68,68,.55); }
.activity-logs-stacked .activity-card.acb-info { border-color: rgba(59,130,246,.55); }
.activity-logs-stacked .activity-header {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  padding-left: 42px;
  padding-right: 90px;
  min-height: 28px;
}
.activity-logs-stacked .action-indicator {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  padding: 5px;
}
.activity-logs-stacked .action-indicator i { width: 16px; height: 16px; }
.activity-logs-stacked .ai-success { background-color: rgba(16,185,129,.15); color: #10b981; }
.activity-logs-stacked .ai-warning { background-color: rgba(245,158,11,.15); color: #f59e0b; }
.activity-logs-stacked .ai-danger { background-color: rgba(239,68,68,.15); color: #ef4444; }
.activity-logs-stacked .ai-info { background-color: rgba(59,130,246,.15); color: #3b82f6; }
.activity-logs-stacked .activity-title {
  margin: 0;
  font-size: 14px;
  line-height: 1.35;
}
.activity-logs-stacked .activity-title strong a,
.activity-logs-stacked .activity-title strong { color: #111; text-decoration: none; }
.activity-logs-stacked .activity-changes { margin-top: 6px; }
.activity-logs-stacked .activity-changes ul { margin: 6px 0 0 18px; }
.activity-logs-stacked .activity-changes li { margin: 2px 0; }
.activity-logs-stacked .activity-changes del { margin-right: 0.6em; }
.activity-logs-stacked .activity-changes ins { margin-left: 0.5em; }
.activity-logs-stacked .change-status-line { display: inline-flex; align-items: center; gap: 6px; }
.activity-logs-stacked .change-status-old { color: #9ca3af; }
.activity-logs-stacked .change-status-new { font-weight: 600; }
.activity-logs-stacked .change-status-arrow svg,
.activity-logs-stacked .change-status-arrow .feather {
  width: 10px !important;
  height: 10px !important;
  stroke-width: 2;
}
.activity-logs-stacked .activity-meta {
  position: absolute;
  right: 14px;
  top: 14px;
  display: flex;
  align-items: flex-start;
  gap: 8px;
  flex-direction: row-reverse;
  color: #6b7280;
  font-size: 10px;
}
.activity-logs-stacked .activity-meta .avatar.avatar-xs img {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: block;
}
.activity-logs-stacked .log-label { display: block; font-size: 12px; color: #6b7280; margin-bottom: 2px; }
.activity-logs-stacked .log-value { display: block; }

/* Task details header - actions row above page-title: закрепляем при скролле */
.task-preview .task-details-header-actions-row {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-bottom: 8px;
  position: sticky;
  top: 0;
  z-index: 1020;
  border-radius: 15px;
  background: #fff;
  padding-bottom: 8px;
  margin-left: -10px;
  margin-right: -10px;
  margin-top: -10px;
  padding-left: 10px;
  padding-right: 10px;
  padding-top: 10px;
  box-shadow: 0 1px 0 0 rgba(0,0,0,0.06);
}
.task-preview .task-details-header-actions-group {
  display: flex;
  align-items: center;
  gap: 4px;
}
.task-preview .task-details-header-actions-group .task-details-header-action-btn,
.task-preview .task-details-header-actions-group a.btn.task-details-header-action-btn {
  margin: 0;
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
.task-preview .task-details-header-actions-group .dropdown.task-details-header-action-btn {
  display: inline-flex;
  align-items: center;
}
.task-preview .task-details-header-actions-group .dropdown.task-details-header-action-btn .btn {
  margin: 0;
}
.task-preview .task-details-header-actions-group .dropdown.task-details-header-action-btn .dropdown-toggle::after {
  display: none;
}

/* Task details view - page header */
.task-preview .page-title.task-details-header {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  border: 2px solid var(--task-status-color, #dee2e6);
  padding: 8px 15px;
}
.task-preview .page-title.task-details-header h1 {
  float: none;
  width: 100%;
  display: block;
  padding: 4px 0;
  margin: 0;
}
.task-preview .page-title.task-details-header .task-details-project-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin: 0 0 4px 0;
}
.task-preview .page-title.task-details-header .task-details-project-right {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}
.task-preview .page-title.task-details-header .task-details-project-left {
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 0;
}
.task-preview .page-title.task-details-header .task-details-status-badge {
  flex-shrink: 0;
  margin-left: 12px;
  margin-top: -2px;
  font-size: 1rem;
  padding: 0.4em 0.65em;
  font-weight: 600;
}
.task-preview .page-title.task-details-header .task-details-project-link {
  font-size: 1.05em;
  font-weight: 600;
}
.task-project-icon {
  width: 36px;
  height: 36px;
  background: #4a90d9;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.task-project-icon svg,
.task-project-icon i {
  color: white;
  stroke: white;
}
.task-project-link {
  margin-left: 10px;
  font-size: 0.9em;
  flex: 1;
  min-width: 0;
}

.task-preview .page-title.task-details-header .task-details-actions-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  width: 100%;
  margin-top: 4px;
  margin-bottom: 0;
  padding: 0;
}
.task-preview .page-title.task-details-header .task-details-actions-row .title-button-group {
  margin: 0;
  float: none;
}

/* Task details - status and priority blocks with labels */
.task-details-status-priority-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  gap: 24px;
}
.task-details-status-block,
.task-details-priority-block {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
}
.task-details-block-label {
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: var(--bs-secondary);
  margin: 0;
  white-space: nowrap;
}
.task-details-status-block .btn-group,
.task-details-priority-block .btn-group {
  margin: 0;
}
.task-priority-buttons .btn i {
  pointer-events: none;
}
.task-priority-buttons .task-priority-btn {
  border-width: 1px;
  transition: opacity 0.2s;
}
.task-priority-buttons .task-priority-btn:hover {
  opacity: 0.9;
}
.task-priority-buttons .task-priority-btn:not(.task-priority-active):hover {
  background-color: rgba(0, 0, 0, 0.05) !important;
}

/* Task details - align main content (description, comments) with header - remove col-lg-8 left padding only here */
.task-preview .task-details-main-content.col-lg-8 {
  padding-left: 0;
}
/* Task details - sidebar: remove col-lg-4 right padding, align with header */
.task-preview .task-details-sidebar.col-lg-4 {
  padding-right: 0;
}
.task-preview .task-details-sidebar .container-fluid {
  padding-left: 0;
  padding-right: 0;
}
/* Task details - remove inner row/col gutter */
.task-preview .task-details-main-content .row {
  margin-left: 0;
  margin-right: 0;
}
.task-preview .task-details-main-content .row > [class*="col-"] {
  padding-left: 0;
  padding-right: 0;
  max-width: none;
}
/* Task details - comments and activity log: no extra padding (pl15 removed from activity log in HTML) */
.task-preview .task-details-comments-section,
.task-preview .task-details-activity-log {
  padding-left: 0;
  padding-right: 0;
}

/* Task details - reminders cards (3 per row) */
.task-preview .task-reminders-cards-section {
  margin-top: 0;
  padding-top: 0;
}
.task-preview .task-reminders-cards-grid {
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
  margin-left: 0;
  margin-right: 0;
}
.task-preview .task-reminders-cards-grid > .col {
  padding: 0;
}
.task-preview .task-reminders-cards-grid .card {
  border: 1px solid var(--bs-border-color, #dee2e6);
}
.task-preview .task-reminders-cards-grid .card-body {
  padding: 6px 8px;
}
.task-preview .task-reminders-cards-grid .reminder-card-date {
  font-size: 0.8em;
  color: var(--bs-secondary);
  margin-bottom: 4px;
}
.task-preview .task-reminders-cards-grid .reminder-card-title {
  line-height: 1.3;
  font-weight: 600;
}
.task-preview .task-reminders-cards-grid .reminder-card-actions {
  display: none;
  position: absolute;
  bottom: 8px;
  left: 8px;
  right: 8px;
  justify-content: space-between;
  align-items: center;
}
.task-preview .task-reminders-cards-grid .task-reminder-card {
  position: relative;
  padding-bottom: 40px;
}
.task-preview .task-reminders-cards-grid .task-reminder-card:hover .reminder-card-actions {
  display: flex;
}
.task-preview .task-reminders-cards-grid .reminder-card-actions .reminder-action {
  color: var(--bs-secondary);
  padding: 4px;
}
.task-preview .task-reminders-cards-grid .reminder-card-actions .reminder-action:hover {
  color: var(--bs-primary);
}

/* Task details - team block under header */
.task-details-team-row {
  display: flex;
  align-items: center;
}
.task-details-team-avatars {
  gap: 10px;
}
.task-details-assignee-avatar {
  flex-shrink: 0;
  line-height: 0;
  border: 2px solid var(--task-status-color, #dee2e6);
  border-radius: 50%;
  display: inline-flex;
  overflow: hidden;
}
.task-details-assignee-avatar .avatar {
  border-radius: 50%;
}
.task-details-assignee-avatar .avatar.task-details-assignee-size {
  width: 65px;
  height: 65px;
}
.task-details-assignee-avatar .avatar.task-details-assignee-size img {
  width: 65px;
  height: 65px;
}
.task-details-assignee-avatar .avatar.task-details-assignee-size.avatar-initials {
  font-size: 32px;
}
.task-details-collaborator-avatar .avatar.task-details-collab-size {
  width: 40px;
  height: 40px;
}
.task-details-collaborator-avatar .avatar.task-details-collab-size img {
  width: 40px;
  height: 40px;
}
.task-details-collaborator-avatar .avatar.task-details-collab-size.avatar-initials {
  font-size: 20px;
}
.task-details-collaborators {
  gap: 6px;
}
.task-details-collaborator-avatar {
  flex-shrink: 0;
  line-height: 0;
}

/* Task timeline - по макету */
.task-timeline-bar {
  position: relative;

}
.task-timeline-date-above {
  text-align: center;
  font-size: 0.7rem;
  font-weight: 600;
  color: #fff;
  margin-bottom: 6px;
}
.task-timeline-bar-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  position: relative;
  min-height: 40px;
  max-height: 40px;
  padding: 0 8px;
  background: color-mix(in srgb, var(--bar-color, #C8E6C9) 80%, transparent);
  border-radius: 10px;
  box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.15);
}
.task-timeline-date-start,
.task-timeline-date-end {
  display: flex;
  flex-direction: column;
  gap: 1px;
  flex-shrink: 0;
  z-index: 1;
}
.task-timeline-date-start[data-act],
.task-timeline-date-end[data-act] {
  cursor: pointer;
}
.task-timeline-date-start[data-act]:hover,
.task-timeline-date-end[data-act]:hover {
  opacity: 0.9;
}
.task-timeline-date-end {
  text-align: right;
}
.task-timeline-label {
  font-size: 0.6rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #fff;
}
.task-timeline-date {
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
}
.task-timeline-marker-track {
  flex: 1;
  position: relative;
  min-width: 50px;
  height: 100%;
  align-self: stretch;
}
.task-timeline-marker {
  position: absolute;
  left: calc(30px + (100% - 60px) * var(--timeline-progress, 0) / 100);
  top: 50%;
  transform: translate(-50%, -10%);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: var(--marker-color, #7CB342);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
  z-index: 2;
}
.task-timeline-info {
  text-align: center;
  margin-top: 6px;
  font-size: 0.65rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #111827;
  white-space: nowrap;
}
.task-timeline-info-overdue {
  color: #dc2626;
}
.task-timeline-info.task-timeline-completed {
  color: #16a34a;
}

/* Task view modal - project row */
.task-view-modal-body .task-view-project-row {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
}

/* Модалка задач — 960px (Bootstrap modal-xl, чуть больше 950) */
#ajaxModal .modal-dialog.modal-xl {
  max-width: 960px;
}
@media (max-width: 991px) {
  #ajaxModal .modal-dialog.modal-xl {
    max-width: 95%;
    margin: auto;
  }
}

#ajaxModal .modal-dialog.modal-xl-1400 {
  max-width: 1600px;
  transition: max-width 0.25s ease;
}
@media (max-width: 1499px) {
  #ajaxModal .modal-dialog.modal-xl-1400 {
    max-width: 95%;
  }
}

#unified-btn-client-only,
#unified-btn-client-only.btn-primary {
  border: 1px solid #dee2e6 !important;
}
.unified-save-mode-btn.unified-btn-project {
  border-color: #4a90d9;
  color: #4a90d9;
}
.unified-save-mode-btn.unified-btn-project:hover {
  background-color: #4a90d9;
  color: #fff;
  border-color: #4a90d9;
}
.unified-save-mode-btn.unified-btn-project.active {
  background-color: #4a90d9;
  border-color: #4a90d9;
  color: #fff;
}

.unified-save-mode-btn.unified-btn-lead {
  border-color: #d5223c;
  color: #d5223c;
}
.unified-save-mode-btn.unified-btn-lead:hover {
  background-color: #d5223c;
  color: #fff;
  border-color: #d5223c;
}
.unified-save-mode-btn.unified-btn-lead.active {
  background-color: #d5223c;
  border-color: #d5223c;
  color: #fff;
}

.unified-right-panel.unified-right-panel-project {
  border: 2px solid #4a90d9;
  border-radius: 20px !important;
}
.unified-right-panel.unified-right-panel-lead {
  border: 2px solid #d5223c;
  border-radius: 20px !important;
}

/* Reminders - скрыть пустую таблицу когда нет напоминаний */
.table-responsive.reminders-empty-block {
  opacity: 0;
  min-height: 0;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

/* Кнопка избранных проектов — иконка command, цвет #4a90d9 */
.projects-quick-list-btn .icon {
  color: #4a90d9 !important;
}

/* Глобальный поиск — модалка xl, 3 карточки в ряд, скролл */
.global-search-modal-body .input-group.flex-nowrap {
  flex-wrap: nowrap;
}
.global-search-modal-body .input-group .form-control {
  flex: 1;
  min-width: 0;
  line-height: 1.5;
  padding: 0.5rem 0.75rem;
}
.global-search-modal-body .global-search-clear-btn {
  flex-shrink: 0;
  padding: 0.375rem 0.75rem;
  border-radius: 0.375rem !important;
  margin-left: 6px;
}
.global-search-modal-body #global-search-container {
  display: flex;
  flex-direction: column;
  min-height: 40px;
  margin-top: 20px;
}
.global-search-modal-body #global-search-container:not(.global-search-has-content) {
  justify-content: center;
}
.global-search-modal-body #global-search-scroll-container {
  max-height: 600px;
  overflow-y: auto;
  flex-shrink: 0;
}
.global-search-modal-body .global-search-card {
  display: block;
  padding: 12px;
  border: 1px solid #e2e7f1;
  border-radius: 10px;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.global-search-modal-body .global-search-card:hover {
  border-color: #4a90d9;
  box-shadow: 0 2px 8px rgba(74, 144, 217, 0.15);
}
.global-search-modal-body .global-search-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 600;
  color: #fff;
  margin-bottom: 8px;
}
.global-search-modal-body .global-search-badge .icon {
  width: 14px;
  height: 14px;
}
.global-search-modal-body .global-search-card-subtitle {
  font-size: 11px;
  color: #6b7280;
  margin-bottom: 6px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.global-search-modal-body .global-search-card-title {
  font-size: 13px;
  color: #333;
  line-height: 1.4;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.global-search-modal-body .global-search-card--comment .global-search-card-title {
  -webkit-line-clamp: 3;
}

/* Страница клиентов: скролл только тела таблицы, скроллбар скрыт (выравнивание шапки и данных) */
.clients-page #clients-list .dataTables_scrollBody {
  min-height: 250px;
  overflow-y: auto !important;
  scrollbar-width: none;
}
.clients-page #clients-list .dataTables_scrollBody::-webkit-scrollbar {
  display: none;
}
/* Таблица клиентов: одинаковые ширины для th и td */
.clients-page #clients-table-card .dataTables_scrollHead table,
.clients-page #clients-table-card .dataTables_scrollBody table,
.clients-page #client-table_wrapper .dataTables_scrollHead table,
.clients-page #client-table_wrapper .dataTables_scrollBody table,
.clients-page #clients-list .dataTables_scrollHead table,
.clients-page #clients-list .dataTables_scrollBody table {
  table-layout: fixed !important;
}
.clients-page #clients-table-card .dataTables_scrollHead th.w30,
.clients-page #clients-table-card .dataTables_scrollBody td.w30,
.clients-page #client-table_wrapper .dataTables_scrollHead th.w30,
.clients-page #client-table_wrapper .dataTables_scrollBody td.w30,
.clients-page #clients-list .dataTables_scrollHead th.w30,
.clients-page #clients-list .dataTables_scrollBody td.w30 { width: 30px !important; min-width: 30px; max-width: 30px; }
.clients-page #clients-table-card .dataTables_scrollHead th.w80,
.clients-page #clients-table-card .dataTables_scrollBody td.w80,
.clients-page #client-table_wrapper .dataTables_scrollHead th.w80,
.clients-page #client-table_wrapper .dataTables_scrollBody td.w80,
.clients-page #clients-list .dataTables_scrollHead th.w80,
.clients-page #clients-list .dataTables_scrollBody td.w80 { width: 80px !important; min-width: 80px; max-width: 80px; }
.clients-page #clients-table-card .dataTables_scrollHead th.w100,
.clients-page #clients-table-card .dataTables_scrollBody td.w100,
.clients-page #client-table_wrapper .dataTables_scrollHead th.w100,
.clients-page #client-table_wrapper .dataTables_scrollBody td.w100,
.clients-page #clients-list .dataTables_scrollHead th.w100,
.clients-page #clients-list .dataTables_scrollBody td.w100 { width: 100px !important; min-width: 100px; max-width: 100px; }
.clients-page #clients-table-card .dataTables_scrollHead th.w120,
.clients-page #clients-table-card .dataTables_scrollBody td.w120,
.clients-page #client-table_wrapper .dataTables_scrollHead th.w120,
.clients-page #client-table_wrapper .dataTables_scrollBody td.w120,
.clients-page #clients-list .dataTables_scrollHead th.w120,
.clients-page #clients-list .dataTables_scrollBody td.w120 { width: 120px !important; min-width: 120px; max-width: 120px; }
.clients-page #clients-table-card .dataTables_scrollHead th.w140,
.clients-page #clients-table-card .dataTables_scrollBody td.w140,
.clients-page #client-table_wrapper .dataTables_scrollHead th.w140,
.clients-page #client-table_wrapper .dataTables_scrollBody td.w140,
.clients-page #clients-list .dataTables_scrollHead th.w140,
.clients-page #clients-list .dataTables_scrollBody td.w140 { width: 140px !important; min-width: 140px; max-width: 140px; }
.clients-page #clients-table-card .dataTables_scrollHead th.w250,
.clients-page #clients-table-card .dataTables_scrollBody td.w250,
.clients-page #client-table_wrapper .dataTables_scrollHead th.w250,
.clients-page #client-table_wrapper .dataTables_scrollBody td.w250,
.clients-page #clients-list .dataTables_scrollHead th.w250,
.clients-page #clients-list .dataTables_scrollBody td.w250 { width: 250px !important; min-width: 250px; max-width: 250px; }
.clients-page #clients-table-card .dataTables_scrollHead th.w300,
.clients-page #clients-table-card .dataTables_scrollBody td.w300,
.clients-page #client-table_wrapper .dataTables_scrollHead th.w300,
.clients-page #client-table_wrapper .dataTables_scrollBody td.w300,
.clients-page #clients-list .dataTables_scrollHead th.w300,
.clients-page #clients-list .dataTables_scrollBody td.w300 { width: 300px !important; min-width: 300px; max-width: 300px; }
.clients-page #clients-table-card .dataTables_scrollHead th.w400,
.clients-page #clients-table-card .dataTables_scrollBody td.w400,
.clients-page #client-table_wrapper .dataTables_scrollHead th.w400,
.clients-page #client-table_wrapper .dataTables_scrollBody td.w400,
.clients-page #clients-list .dataTables_scrollHead th.w400,
.clients-page #clients-list .dataTables_scrollBody td.w400 { width: 400px !important; min-width: 400px; max-width: 400px; }
.clients-page #clients-table-card .dataTables_scrollHead th.w550,
.clients-page #clients-table-card .dataTables_scrollBody td.w550,
.clients-page #clients-table-card .dataTables_scrollBody thead th.w550,
.clients-page #client-table_wrapper .dataTables_scrollHead th.w550,
.clients-page #client-table_wrapper .dataTables_scrollBody td.w550,
.clients-page #client-table_wrapper .dataTables_scrollBody thead th.w550,
.clients-page #clients-list .dataTables_scrollHead th.w550,
.clients-page #clients-list .dataTables_scrollBody td.w550,
.clients-page #clients-list .dataTables_scrollBody thead th.w550 { width: 550px !important; min-width: 550px; max-width: 550px; }
.clients-page #clients-table-card .dataTables_scrollHead th.w150,
.clients-page #clients-table-card .dataTables_scrollBody td.w150,
.clients-page #clients-table-card .dataTables_scrollBody thead th.w150,
.clients-page #client-table_wrapper .dataTables_scrollHead th.w150,
.clients-page #client-table_wrapper .dataTables_scrollBody td.w150,
.clients-page #client-table_wrapper .dataTables_scrollBody thead th.w150,
.clients-page #clients-list .dataTables_scrollHead th.w150,
.clients-page #clients-list .dataTables_scrollBody td.w150,
.clients-page #clients-list .dataTables_scrollBody thead th.w150 { width: 150px !important; min-width: 150px; max-width: 150px; }
.clients-page #clients-table-card .dataTables_scrollHead th.col-client-settlements,
.clients-page #clients-table-card .dataTables_scrollBody td.col-client-settlements,
.clients-page #clients-table-card .dataTables_scrollBody thead th.col-client-settlements,
.clients-page #client-table_wrapper .dataTables_scrollHead th.col-client-settlements,
.clients-page #client-table_wrapper .dataTables_scrollBody td.col-client-settlements,
.clients-page #client-table_wrapper .dataTables_scrollBody thead th.col-client-settlements { width: 150px !important; min-width: 150px !important; max-width: 150px !important; }
.clients-page #clients-table-card .dataTables_scrollHead th.col-last-comment,
.clients-page #clients-table-card .dataTables_scrollBody td.col-last-comment,
.clients-page #clients-table-card .dataTables_scrollBody thead th.col-last-comment,
.clients-page #client-table_wrapper .dataTables_scrollHead th.col-last-comment,
.clients-page #client-table_wrapper .dataTables_scrollBody td.col-last-comment,
.clients-page #client-table_wrapper .dataTables_scrollBody thead th.col-last-comment { width: 550px !important; min-width: 550px !important; max-width: 550px !important; }

/* Холодные: те же фиксированные ширины шапки/тела (scrollY) */
.clients-page #colds-table-card .dataTables_scrollBody {
  overflow-y: auto !important;
  scrollbar-width: none;
}
.clients-page #colds-table-card .dataTables_scrollBody::-webkit-scrollbar {
  display: none;
}
.clients-page #colds-table-card .dataTables_scrollHead table,
.clients-page #colds-table-card .dataTables_scrollBody table,
.clients-page #colds-table_wrapper .dataTables_scrollHead table,
.clients-page #colds-table_wrapper .dataTables_scrollBody table {
  table-layout: fixed !important;
}
.clients-page #colds-table_wrapper .dataTables_scrollHead th.w50,
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w50,
.clients-page #colds-table_wrapper .dataTables_scrollBody thead th.w50 { width: 50px !important; min-width: 50px; max-width: 50px; }
.clients-page #colds-table_wrapper .dataTables_scrollHead th.w80,
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w80,
.clients-page #colds-table_wrapper .dataTables_scrollBody thead th.w80 { width: 80px !important; min-width: 80px; max-width: 80px; }
.clients-page #colds-table_wrapper .dataTables_scrollHead th.w100,
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w100,
.clients-page #colds-table_wrapper .dataTables_scrollBody thead th.w100 { width: 100px !important; min-width: 100px; max-width: 100px; }
.clients-page #colds-table_wrapper .dataTables_scrollHead th.w120,
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w120,
.clients-page #colds-table_wrapper .dataTables_scrollBody thead th.w120 { width: 120px !important; min-width: 120px; max-width: 120px; }
.clients-page #colds-table_wrapper .dataTables_scrollHead th.w150,
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w150,
.clients-page #colds-table_wrapper .dataTables_scrollBody thead th.w150 { width: 150px !important; min-width: 150px; max-width: 150px; }
.clients-page #colds-table_wrapper .dataTables_scrollHead th.w160,
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w160,
.clients-page #colds-table_wrapper .dataTables_scrollBody thead th.w160 { width: 160px !important; min-width: 160px; max-width: 160px; }
.clients-page #colds-table_wrapper .dataTables_scrollHead th.w220,
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w220,
.clients-page #colds-table_wrapper .dataTables_scrollBody thead th.w220 { width: 220px !important; min-width: 220px; max-width: 220px; }
.clients-page #colds-table_wrapper .dataTables_scrollHead th.w250,
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w250,
.clients-page #colds-table_wrapper .dataTables_scrollBody thead th.w250 { width: 250px !important; min-width: 250px; max-width: 250px; }
.clients-page #colds-table_wrapper .dataTables_scrollHead th.w280,
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w280,
.clients-page #colds-table_wrapper .dataTables_scrollBody thead th.w280 { width: 280px !important; min-width: 280px; max-width: 280px; }
.clients-page #colds-table_wrapper .dataTables_scrollHead th.w350,
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w350,
.clients-page #colds-table_wrapper .dataTables_scrollBody thead th.w350 { width: 350px !important; min-width: 350px; max-width: 350px; }
.clients-page #colds-table_wrapper .dataTables_scrollHead th.option,
.clients-page #colds-table_wrapper .dataTables_scrollBody td.option,
.clients-page #colds-table_wrapper .dataTables_scrollBody thead th.option { width: 80px !important; min-width: 80px; max-width: 80px; }
/* Компания / контакты / сегмент / гео — в одну строку по средней длине */
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w350 {
  overflow: hidden;
}
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w350 .font-weight-500,
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w350 a {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  max-width: 100%;
}
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w250 .colds-contacts-cell .text-off,
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w250 .colds-contacts-cell .font-weight-500 {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w280 .seg-title {
  white-space: nowrap;
}
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w150 .colds-geo-cell .font-weight-500,
.clients-page #colds-table_wrapper .dataTables_scrollBody td.w150 .colds-geo-cell .text-off {
  white-space: nowrap;
}

.claim-title-with-labels .claim-labels-above { margin-bottom: 4px; }
.claim-title-with-labels .claim-labels-above .badge { margin-right: 4px; margin-bottom: 2px; }

/* Страница просмотра рекламации (claims/view): отступ между навигацией «Обзор / Отчёт» и контентом */
.claim-details-view .tab-content {
  margin-top: 1rem !important;
}

/* Страница рекламаций: цвет кнопки «Добавить рекламацию» */
.claims-page .title-button-group .btn-primary,
.claims-page .title-button-group a.btn-primary {
  background-color: #ef4444 !important;
  border-color: #ef4444 !important;
  color: #fff !important;
}
.claims-page .title-button-group .btn-primary:hover,
.claims-page .title-button-group a.btn-primary:hover {
  filter: brightness(0.9);
}

/* Страница рекламаций: скролл только тела таблицы, скроллбар скрыт (выравнивание шапки и данных) */
.claims-page #claims-table-card .dataTables_scrollBody,
.claims-page .claims-list-section .dataTables_scrollBody {
  min-height: 250px;
  overflow-y: auto !important;
  scrollbar-width: none;
}
.claims-page #claims-table-card .dataTables_scrollBody::-webkit-scrollbar,
.claims-page .claims-list-section .dataTables_scrollBody::-webkit-scrollbar {
  display: none;
}
/* Таблица рекламаций: одинаковые ширины для th и td */
.claims-page #claims-table-card .dataTables_scrollHead table,
.claims-page #claims-table-card .dataTables_scrollBody table,
.claims-page .claims-list-section .dataTables_scrollHead table,
.claims-page .claims-list-section .dataTables_scrollBody table {
  table-layout: fixed !important;
}
.claims-page #claims-table-card .dataTables_scrollHead th.w50,
.claims-page #claims-table-card .dataTables_scrollBody td.w50,
.claims-page .claims-list-section .dataTables_scrollHead th.w50,
.claims-page .claims-list-section .dataTables_scrollBody td.w50 { width: 50px !important; min-width: 50px; max-width: 50px; }
.claims-page #claims-table-card .dataTables_scrollHead th.w80,
.claims-page #claims-table-card .dataTables_scrollBody td.w80,
.claims-page .claims-list-section .dataTables_scrollHead th.w80,
.claims-page .claims-list-section .dataTables_scrollBody td.w80 { width: 80px !important; min-width: 80px; max-width: 80px; }
.claims-page #claims-table-card .dataTables_scrollHead th.w100,
.claims-page #claims-table-card .dataTables_scrollBody td.w100,
.claims-page .claims-list-section .dataTables_scrollHead th.w100,
.claims-page .claims-list-section .dataTables_scrollBody td.w100 { width: 100px !important; min-width: 100px; max-width: 100px; }
.claims-page #claims-table-card .dataTables_scrollHead th.w120,
.claims-page #claims-table-card .dataTables_scrollBody td.w120,
.claims-page .claims-list-section .dataTables_scrollHead th.w120,
.claims-page .claims-list-section .dataTables_scrollBody td.w120 { width: 120px !important; min-width: 120px; max-width: 120px; }
.claims-page #claims-table-card .dataTables_scrollHead th.w140,
.claims-page #claims-table-card .dataTables_scrollBody td.w140,
.claims-page .claims-list-section .dataTables_scrollHead th.w140,
.claims-page .claims-list-section .dataTables_scrollBody td.w140 { width: 140px !important; min-width: 140px; max-width: 140px; }
.claims-page #claims-table-card .dataTables_scrollHead th.w150,
.claims-page #claims-table-card .dataTables_scrollBody td.w150,
.claims-page .claims-list-section .dataTables_scrollHead th.w150,
.claims-page .claims-list-section .dataTables_scrollBody td.w150 { width: 150px !important; min-width: 150px; max-width: 150px; }
.claims-page #claims-table-card .dataTables_scrollHead th.w200,
.claims-page #claims-table-card .dataTables_scrollBody td.w200,
.claims-page .claims-list-section .dataTables_scrollHead th.w200,
.claims-page .claims-list-section .dataTables_scrollBody td.w200 { width: 200px !important; min-width: 200px; max-width: 200px; }
.claims-page #claims-table-card .dataTables_scrollHead th.w400,
.claims-page #claims-table-card .dataTables_scrollBody td.w400,
.claims-page .claims-list-section .dataTables_scrollHead th.w400,
.claims-page .claims-list-section .dataTables_scrollBody td.w400 { width: 400px !important; min-width: 400px; max-width: 400px; }

/* Рекламации: сетка тела — box-shadow (не ломает ширины колонок при scrollY) */
.claims-page #claim-table_wrapper .dataTables_scrollBody tbody td,
.claims-page .claims-list-section .dataTables_scrollBody tbody td {
  border-right: none !important;
  border-top: none !important;
  border-bottom: 1px solid var(--vst-table-body-grid, #e2e6ec) !important;
}
.claims-page #claim-table_wrapper .dataTables_scrollBody tbody td:not(:last-child),
.claims-page .claims-list-section .dataTables_scrollBody tbody td:not(:last-child) {
  box-shadow: inset -1px 0 0 var(--vst-table-body-grid, #e2e6ec) !important;
}

.claims-page .table-wrapper-scroll-x {
  overflow-x: visible !important;
  overflow-y: visible !important;
}
.claims-page .card .dataTables_wrapper .dataTables_scrollBody {
  min-height: 250px;
  overflow: auto !important;
  scrollbar-width: thin;
  background: #fff;
}
.claims-page .card .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
.claims-page .card .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar-thumb {
  background: rgba(6, 36, 81, 0.3);
  border-radius: 4px;
}
.claims-page .card .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar-track {
  background: #f1f1f5;
}

/* Закреплённые колонки ID и название рекламации при горизонтальном скролле */
.claims-page .card .dataTables_wrapper th.col-id,
.claims-page .card .dataTables_wrapper td.col-id {
  position: sticky;
  left: 0;
  z-index: 2;
  background: #fff;
  box-shadow: none;
  min-width: 64px !important;
  width: 64px !important;
  max-width: 72px !important;
  text-align: center;
}
.claims-page .card .dataTables_wrapper th.col-id {
  background: var(--vst-table-head-bg, #dde2ea) !important;
}
.claims-page .card .dataTables_wrapper th.col-title,
.claims-page .card .dataTables_wrapper td.col-title {
  position: sticky;
  left: var(--vst-col-id-width, 64px);
  z-index: 2;
  background: #fff;
  box-shadow: none;
}
.claims-page .card .dataTables_wrapper th.col-title {
  background: var(--vst-table-head-bg, #dde2ea) !important;
}
.claims-page .claim-status-badge {
  font-weight: 600;
  font-size: 11px;
  padding: 3px 8px;
  border-radius: var(--vst-radius-sm, 4px);
  white-space: nowrap;
}
.claims-page #claim-table_wrapper td.col-status .filter-option-with-icon {
  gap: 6px;
  align-items: center;
}
.claims-page #claim-table_wrapper td.col-status .filter-status-icon {
  width: 24px;
  height: 24px;
  min-width: 24px;
}
.claims-page #claim-table_wrapper td.col-status .filter-status-icon svg,
.claims-page #claim-table_wrapper td.col-status .filter-status-feather {
  width: 13px;
  height: 13px;
}

.claim-details-page .claim-status-dropdown-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 35px;
  line-height: 1;
}
.claim-details-page .claim-status-dropdown-btn .filter-option-with-icon {
  gap: 6px;
  align-items: center;
  line-height: 1;
}
.claim-details-page .claim-status-dropdown-btn .filter-status-icon {
  position: relative;
  line-height: 0;
}
.claim-details-page .claim-status-dropdown-btn .filter-status-icon svg,
.claim-details-page .claim-status-dropdown-btn .filter-status-icon .filter-status-feather {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  display: block;
}
.claim-details-page .claim-status-dropdown-menu .dropdown-item {
  display: flex;
  align-items: center;
}
.claim-details-page .claim-status-dropdown-menu .filter-option-with-icon {
  gap: 8px;
}
.claim-details-page .claim-header-status-readonly {
  display: inline-flex;
  align-items: center;
  min-height: 35px;
  pointer-events: none;
}

.project-details-view .project-status-dropdown-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 35px;
  line-height: 1;
}
.project-details-view .project-status-dropdown-btn .filter-option-with-icon {
  gap: 6px;
  align-items: center;
  line-height: 1;
}
.project-details-view .project-status-dropdown-btn .filter-status-icon {
  position: relative;
  line-height: 0;
}
.project-details-view .project-status-dropdown-btn .filter-status-icon svg,
.project-details-view .project-status-dropdown-btn .filter-status-icon .filter-status-feather {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  display: block;
}
.project-details-view .project-status-dropdown-menu .dropdown-item {
  display: flex;
  align-items: center;
}
.project-details-view .project-status-dropdown-menu .filter-option-with-icon {
  gap: 8px;
}

/* Страница проектов: скролл только таблицы, фильтры/поиск/футер не скроллятся */
.projects-page .table-wrapper-scroll-x {
  overflow-x: visible !important;
  overflow-y: visible !important;
}
.projects-page .card .dataTables_wrapper .dataTables_scrollBody {
  min-height: 250px;
  overflow: auto !important;
  scrollbar-width: thin;
  background: #fff;
}
.projects-page .card .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
.projects-page .card .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar-thumb {
  background: rgba(6, 36, 81, 0.3);
  border-radius: 4px;
}
.projects-page .card .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar-track {
  background: #f1f1f5;
}

/* Закреплённые колонки ID и название проекта при горизонтальном скролле */
.projects-page .card .dataTables_wrapper th.col-id,
.projects-page .card .dataTables_wrapper td.col-id {
  position: sticky;
  left: 0;
  z-index: 2;
  background: #fff;
  box-shadow: none;
}
.projects-page .card .dataTables_wrapper th.col-id {
  background: var(--vst-table-head-bg, #dde2ea) !important;
}
.projects-page .card .dataTables_wrapper th.col-title,
.projects-page .card .dataTables_wrapper td.col-title {
  position: sticky;
  left: var(--vst-col-id-width, 40px);
  z-index: 2;
  background: #fff;
  box-shadow: none;
}
.projects-page .card .dataTables_wrapper th.col-title {
  background: var(--vst-table-head-bg, #dde2ea) !important;
}

/* Вкладка «Проекты» в карточке лида (leads/view_lead) — тот же скролл и sticky */
#lead-projects .table-wrapper-scroll-x {
  overflow-x: visible !important;
  overflow-y: visible !important;
}
#lead-projects .table-wrapper-scroll-x .dataTables_wrapper .dataTables_scrollBody,
#lead-projects .dataTables_wrapper .dataTables_scrollBody {
  min-height: 250px;
  overflow: auto !important;
  scrollbar-width: thin;
  background: #fff;
}
#lead-projects .table-wrapper-scroll-x .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar,
#lead-projects .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
#lead-projects .table-wrapper-scroll-x .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar-thumb,
#lead-projects .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar-thumb {
  background: rgba(6, 36, 81, 0.3);
  border-radius: 4px;
}
#lead-projects .table-wrapper-scroll-x .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar-track,
#lead-projects .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar-track {
  background: #f1f1f5;
}
#lead-projects .dataTables_wrapper th.col-id,
#lead-projects .dataTables_wrapper td.col-id {
  position: sticky;
  left: 0;
  z-index: 2;
  background: #fff;
  box-shadow: none;
}
#lead-projects .dataTables_wrapper th.col-id {
  background: var(--vst-table-head-bg, #dde2ea) !important;
}
#lead-projects .dataTables_wrapper th.col-title,
#lead-projects .dataTables_wrapper td.col-title {
  position: sticky;
  left: var(--vst-col-id-width, 40px);
  z-index: 2;
  background: #fff;
  box-shadow: none;
}
#lead-projects .dataTables_wrapper th.col-title {
  background: var(--vst-table-head-bg, #dde2ea) !important;
}

/* Страница розничных заявок (lead_projects): скролл, шапка, sticky — как у проектов */
.lead-projects-page .table-wrapper-scroll-x {
  overflow-x: visible !important;
  overflow-y: visible !important;
}
.lead-projects-page .card .dataTables_wrapper .dataTables_scrollBody {
  min-height: 250px;
  overflow: auto !important;
  scrollbar-width: thin;
  background: #fff;
}
.lead-projects-page .card .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
.lead-projects-page .card .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar-thumb {
  background: rgba(6, 36, 81, 0.3);
  border-radius: 4px;
}
.lead-projects-page .card .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar-track {
  background: #f1f1f5;
}
/* Sticky: ID и Лид */
.lead-projects-page .card .dataTables_wrapper th.col-id,
.lead-projects-page .card .dataTables_wrapper td.col-id {
  position: sticky;
  left: 0;
  z-index: 2;
  background: #fff;
  box-shadow: 2px 0 4px -2px rgba(0,0,0,0.1);
}
.lead-projects-page .card .dataTables_wrapper th.col-id {
  background: var(--vst-table-head-bg, #dde2ea) !important;
}
.lead-projects-page .card .dataTables_wrapper th.col-lead,
.lead-projects-page .card .dataTables_wrapper td.col-lead {
  position: sticky;
  left: 30px;
  z-index: 2;
  background: #fff;
  box-shadow: 2px 0 4px -2px rgba(0,0,0,0.1);
}
.lead-projects-page .card .dataTables_wrapper th.col-lead {
  background: var(--vst-table-head-bg, #dde2ea) !important;
}

/* Файлы в теле комментария — masonry для изображений, grid для PDF/3D */
.comment-image-box.comment-files-grid {
  width: 100% !important;
}

/* Изображения: CSS columns masonry, полный кадр без обрезки */
.comment-image-box.comment-files-images-only .timeline-images {
  display: block;
  width: 100%;
  column-gap: 10px;
}
.comment-image-box.comment-files-images-only.comment-files-count-1 .timeline-images {
  column-count: 1;
}
.comment-image-box.comment-files-images-only.comment-files-count-2 .timeline-images {
  column-count: 2;
}
.comment-image-box.comment-files-images-only.comment-files-count-3 .timeline-images {
  column-count: 3;
}
.comment-image-box.comment-files-images-only.comment-files-count-4 .timeline-images {
  column-count: 4;
}
.comment-image-box.comment-files-images-only.comment-files-count-5 .timeline-images {
  column-count: 5;
}
.comment-image-box.comment-files-images-only .timeline-images > a.comment-file-image-link {
  display: inline-block;
  width: 100%;
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  margin: 0 0 10px;
  border-radius: 15px;
  border: 1px solid #cecece;
  overflow: hidden;
  background: #fff;
  max-width: none;
  vertical-align: top;
}
.comment-image-box.comment-files-images-only .timeline-images > a.comment-file-image-link img {
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: contain;
  border-radius: 14px;
}

.comment-image-box.comment-files-has-heavy .timeline-images {
  display: grid;
  gap: 10px;
  width: 100%;
}
.comment-image-box.comment-files-has-heavy.comment-files-count-1 .timeline-images {
  grid-template-columns: 1fr;
}
.comment-image-box.comment-files-has-heavy.comment-files-count-2 .timeline-images {
  grid-template-columns: repeat(2, 1fr);
}
.comment-image-box.comment-files-has-heavy.comment-files-count-3 .timeline-images {
  grid-template-columns: repeat(3, 1fr);
}
.comment-image-box.comment-files-has-heavy.comment-files-count-4 .timeline-images {
  grid-template-columns: repeat(4, 1fr);
}
.comment-image-box.comment-files-has-heavy.comment-files-count-5 .timeline-images {
  grid-template-columns: repeat(5, 1fr);
}
/* Развёрнутый вид: по двойному клику — 100% ширины, друг под другом */
.comment-image-box.comment-files-grid.comment-files-expanded .timeline-images {
  grid-template-columns: 1fr !important;
}
.comment-image-box.comment-files-has-heavy.comment-files-expanded .timeline-images > div iframe.pdfjs-comment-preview {
  max-height: none;
  height: 100%;
}
.comment-image-box.comment-files-grid.comment-files-expanded .timeline-images > a img,
.comment-image-box.comment-files-grid.comment-files-expanded .timeline-images > div img,
.comment-image-box.comment-files-grid.comment-files-expanded .timeline-images > div object,
.comment-image-box.comment-files-grid:not(.comment-files-has-heavy).comment-files-expanded .timeline-images > div iframe,
.comment-image-box.comment-files-grid.comment-files-expanded .timeline-images > div video {
  max-height: 700px;
}
.comment-image-box.comment-files-grid.comment-files-expanded .timeline-images .pdf-preview-embed object,
.comment-image-box.comment-files-grid.comment-files-expanded .timeline-images .step-file-embed iframe,
.comment-image-box.comment-files-grid.comment-files-expanded .timeline-images .dwg-file-embed iframe,
.comment-image-box.comment-files-grid.comment-files-expanded .timeline-images .igs-file-embed iframe,
.comment-image-box.comment-files-grid.comment-files-expanded .timeline-images .obj-file-embed iframe,
.comment-image-box.comment-files-grid.comment-files-expanded .timeline-images .solidworks-file-embed iframe {
  max-height: 600px;
  height: 600px;
}
.comment-image-box.comment-files-has-heavy .timeline-images > a:not(.comment-file-image-link),
.comment-image-box.comment-files-has-heavy .timeline-images > div {
  border-radius: 15px;
  border: 1px solid #cecece;
  overflow: hidden;
  background: #fff;
  max-width: none;
}
/* Legacy 220px cap — только для старых embed без task-details override */
.comment-image-box.comment-files-grid:not(.comment-files-has-heavy):not(.comment-files-images-only) .timeline-images > a img,
.comment-image-box.comment-files-grid:not(.comment-files-has-heavy):not(.comment-files-images-only) .timeline-images > div img,
.comment-image-box.comment-files-grid:not(.comment-files-has-heavy):not(.comment-files-images-only) .timeline-images > div object,
.comment-image-box.comment-files-grid:not(.comment-files-has-heavy):not(.comment-files-images-only) .timeline-images > div iframe,
.comment-image-box.comment-files-grid:not(.comment-files-has-heavy):not(.comment-files-images-only) .timeline-images > div video {
  border-radius: 14px;
  display: block;
  width: 100%;
  height: auto;
  max-height: 220px;
  object-fit: cover;
}
.comment-image-box.comment-files-grid .timeline-images .file-mockup {
  border-radius: 14px;
  min-height: 140px;
  height: auto;
}
.comment-image-box.comment-files-grid .timeline-images .pdf-preview-embed,
.comment-image-box.comment-files-grid .timeline-images .step-file-embed,
.comment-image-box.comment-files-grid .timeline-images .dwg-file-embed,
.comment-image-box.comment-files-grid .timeline-images .igs-file-embed,
.comment-image-box.comment-files-grid .timeline-images .obj-file-embed,
.comment-image-box.comment-files-grid .timeline-images .solidworks-file-embed,
.comment-image-box.comment-files-grid .timeline-images .file-preview-video {
  border-radius: 14px;
  overflow: hidden;
}
/* Legacy 220px — не для task-preview heavy embed (см. task-details.css) */
.comment-image-box.comment-files-grid:not(.comment-files-has-heavy) .timeline-images .pdf-preview-embed object,
.comment-image-box.comment-files-grid:not(.comment-files-has-heavy) .timeline-images .pdf-preview-embed iframe,
.comment-image-box.comment-files-grid:not(.comment-files-has-heavy) .timeline-images .step-file-embed iframe,
.comment-image-box.comment-files-grid:not(.comment-files-has-heavy) .timeline-images .dwg-file-embed iframe,
.comment-image-box.comment-files-grid:not(.comment-files-has-heavy) .timeline-images .igs-file-embed iframe,
.comment-image-box.comment-files-grid:not(.comment-files-has-heavy) .timeline-images .obj-file-embed iframe,
.comment-image-box.comment-files-grid:not(.comment-files-has-heavy) .timeline-images .solidworks-file-embed iframe {
  max-height: 220px;
  height: 220px;
}

/* Скролл списка комментариев в просмотре задачи */
.task-details-comments-section .task-comments-list-scroll {
  max-height: 600px;
  overflow-y: auto;
}

/* Комментарии задач — визуал как в комментах клиента (unified) */
.task-details-comments-section .task-comment-item,
.task-preview .task-comment-item {
  background: #f8f9fa;
  border: 1px solid #e9ecef !important;
}
.task-details-comments-section .task-comment-item:hover,
.task-preview .task-comment-item:hover {
  background: #f1f3f4;
}
.task-details-comments-section .task-comment-item .comment-text,
.task-preview .task-comment-item .comment-text {
  line-height: 1.5;
}
.task-details-comments-section .task-comment-item .avatar.avatar-xs img,
.task-preview .task-comment-item .avatar.avatar-xs img {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  object-fit: cover;
}
.gradient-header {
background: linear-gradient(90deg, #4a90d9, #d5223c) !important;
}

.add-column-drop {
  border: 1px dashed #cecece;
  border-radius: 15px;
}

/* Меню отчётов — иконки, цвета, без сворачивания */
.reports-sidebar-flat .reports-menu-list {
  border: none;
  padding: 0;
}
.reports-sidebar-flat .reports-menu-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 15px;
  border-radius: 4px;
  border: 1px solid transparent !important;
}
.reports-sidebar-flat .reports-menu-item .icon {
  flex-shrink: 0;
  color: #4e5e6a;
}
.reports-sidebar-flat .reports-menu-item:hover,
.reports-sidebar-flat .reports-menu-item.active {
  border-width: 1px !important;
  border-style: solid !important;
  border-color: #4e5e6a !important;
}
.reports-sidebar-flat .reports-menu-item.active .icon {
  color: inherit;
}
/* Цветные переопределяют border-left-color */
/* Цвета для проектов, рекламаций, розницы */
.reports-sidebar-flat .reports-menu-item.reports-color-projects:hover,
.reports-sidebar-flat .reports-menu-item.reports-color-projects.active {
  border-color: #2196f3 !important;
  color: #1976d2;
}
.reports-sidebar-flat .reports-menu-item.reports-color-projects.active .icon {
  color: #2196f3;
}
.reports-sidebar-flat .reports-menu-item.reports-color-claims:hover,
.reports-sidebar-flat .reports-menu-item.reports-color-claims.active {
  border-color: #ef4444 !important;
  color: #dc2626;
}
.reports-sidebar-flat .reports-menu-item.reports-color-claims.active .icon {
  color: #ef4444;
}
.reports-sidebar-flat .reports-menu-item.reports-color-retail:hover,
.reports-sidebar-flat .reports-menu-item.reports-color-retail.active {
  border-color: #d5223c !important;
  color: #b91c33;
}
.reports-sidebar-flat .reports-menu-item.reports-color-retail.active .icon {
  color: #d5223c;
}

/* Текстовый вывод в виджетах отчётов — спойлер «Показать вывод» */
.report-output-spoiler .report-output-content {
  max-height: 200px;
  overflow-y: auto;
}
.report-output-spoiler .report-output-content.report-output-collapsed {
  display: none !important;
}
.report-output-spoiler .report-legend {
  flex-direction: column;
  align-items: flex-start;
}
.report-output-spoiler .report-legend .legend-item {
  margin-bottom: 4px;
}
.report-output-spoiler.report-output-empty {
  display: none;
}

/* Интерактивная легенда для круговых диаграмм (pie/doughnut) — клик скрывает/показывает сегмент */
.chart-legend-toggle { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.chart-legend-toggle .legend-item { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; cursor: pointer; }
.chart-legend-toggle .legend-item.legend-item-hidden { opacity: 0.6; }
.chart-legend-toggle .legend-item.legend-item-hidden .legend-text { text-decoration: line-through; }
.chart-legend-toggle .legend-icon { width: 16px; height: 16px; border-radius: 3px; flex-shrink: 0; }
.chart-legend-toggle .legend-icon img { width: 14px; height: 14px; object-fit: contain; }
.dashboard-task-legend { justify-content: center; width: 100%; }
.dashboard-task-legend .legend-item { font-size: 11px; }
.dashboard-task-legend .legend-icon { width: 12px; height: 12px; }
.dashboard-task-priorities { justify-content: center; width: 100%; font-size: 11px; }
.dashboard-task-priorities .icon-18 { width: 12px; height: 12px; }

/* Скрытые модалы во вкладке «Обзор» лида не должны перехватывать клики (centerEl=modal-footer иначе блокирует страницу) */
#lead-overview .modal:not(.show) { pointer-events: none !important; }
#lead-overview .modal.show { pointer-events: auto; }

/* Видео объявления — на всю ширину (загруженный файл и встроенные YouTube/Rutube) */
.announcement-detail-view .announcement-video-player {
  width: calc(100% + 60px);
  max-width: none;
  margin-left: -30px;
  margin-right: -30px;
}
.announcement-detail-view .announcement-main-video {
  width: 100%;
  max-width: 100%;
  max-height: 70vh;
  display: block;
  border-radius: 8px;
}
.announcement-detail-view .card-body iframe.note-video-clip {
  width: 100% !important;
  max-width: 100%;
  aspect-ratio: 16 / 9;
  height: auto !important;
}

/* Страница заказчиков (clients/index) */
.client-widget-container {
  overflow: hidden;
}
.client-widget-container.client-widget-hidden {
  display: none;
}
.btn-add-project-client {
  background-color: #4a90d9 !important;
  border-color: #4a90d9 !important;
  color: #ffffff !important;
}
.btn-add-project-client:hover {
  background-color: #3a7bc8 !important;
  border-color: #3a7bc8 !important;
  color: #ffffff !important;
}
.btn-add-customer {
  background: linear-gradient(90deg, #4a90d9, #d5223c) !important;
  border: none !important;
  color: #ffffff !important;
}
.btn-add-customer:hover {
  background: linear-gradient(0deg, #3a7bc8, #b91c32) !important;
  border: none !important;
  color: #ffffff !important;
}

/* Модалка «Добавить заказчика» — переключатель Проектный/Розничный и кнопки «Сохранить и добавить проект» / «Сохранить и создать розничную заявку» */
.unified-type-btn {
  min-width: 140px;
}

/* Проектный в неактивном состоянии (выбран розничный) — только бордюр и текст/иконка #4a90d9 */
#unified-btn-project.btn-outline-secondary {
  background-color: transparent !important;
  border: 1px solid #4a90d9 !important;
  color: #4a90d9 !important;
}
#unified-btn-project.btn-outline-secondary:hover {
  background-color: #4a90d9 !important;
  border-color: #4a90d9 !important;
  color: #fff !important;
}
#unified-btn-project.btn-outline-secondary svg,
#unified-btn-project.btn-outline-secondary:hover svg {
  stroke: currentColor;
}
/* Проектный выбран — заливка #4a90d9, иконка command */
.unified-type-project {
  background-color: #4a90d9 !important;
  border: 1px solid #4a90d9 !important;
  color: #fff !important;
}
.unified-type-project:hover {
  background-color: #4a90d9 !important;
  border-color: #4a90d9 !important;
  color: #fff !important;
}
.unified-type-project svg {
  stroke: currentColor;
}

/* Розничный в неактивном состоянии — только бордюр и текст/иконка #d5223c */
#unified-btn-retail.btn-outline-secondary {
  background-color: transparent !important;
  border: 1px solid #d5223c !important;
  color: #d5223c !important;
}
#unified-btn-retail.btn-outline-secondary svg,
#unified-btn-retail.btn-outline-secondary:hover svg {
  stroke: currentColor;
}
#unified-btn-retail.btn-outline-secondary:hover {
  background-color: #d5223c !important;
  border-color: #d5223c !important;
  color: #fff !important;
}
/* Розничный выбран — заливка #d5223c */
.unified-type-retail {
  background-color: #d5223c !important;
  border-color: #d5223c !important;
  color: #fff !important;
}
.unified-type-retail:hover {
  background-color: #d5223c !important;
  border-color: #d5223c !important;
  color: #fff !important;
}

/* Кнопка «Сохранить и добавить проект» — по умолчанию фон #4a90d9, текст и иконка белые; при наведении темнее */
.unified-btn-save-and-project {
  background-color: #4a90d9 !important;
  border: 1px solid #4a90d9 !important;
  color: #fff !important;
}
.unified-btn-save-and-project svg,
.unified-btn-save-and-project:hover svg {
  stroke: currentColor;
}
.unified-btn-save-and-project:hover {
  background-color: #3a7bc8 !important;
  border-color: #3a7bc8 !important;
  color: #fff !important;
}

/* Кнопка «Сохранить и создать розничную заявку» — по умолчанию фон #d5223c, текст и иконка белые; при наведении темнее */
.unified-btn-save-and-lead {
  background-color: #d5223c !important;
  border: 1px solid #d5223c !important;
  color: #fff !important;
}
.unified-btn-save-and-lead svg,
.unified-btn-save-and-lead:hover svg {
  stroke: currentColor;
}
.unified-btn-save-and-lead:hover {
  background-color: #b91c32 !important;
  border-color: #b91c32 !important;
  color: #fff !important;
}

#unified-retail-fields {
  display: none;
}
.unified-client-type-hint {
  line-height: 1.35;
}
.unified-top-row .col-md-6 {
  min-width: 0;
}

/* Редактор дашборда: палитра слева (+10% к базовым 308px), сетка справа */
.dashboard-edit-section #widget-container-area {
  width: 339px;
  padding-right: 24px;
}

.dashboard-edit-section #widget-row-container.ml298 {
  margin-left: 375px;
}

.dashboard-edit-section #widget-container-area .dashboard-widgets-palette {
  border-radius: 16px;
  border: 1px solid #e8edf3;
  box-shadow: 0 2px 10px rgba(7, 36, 81, 0.07);
  background: #fff;
}

.dashboard-edit-section #widget-container-area .js-widget-container {
  padding: 10px;
}

.dashboard-edit-section .js-widget-container .widget,
.dashboard-edit-section .add-column-drop .widget {
  border: 1px solid #dde4ee;
  border-radius: 12px;
  background: #fff;
  padding: 8px 10px !important;
  margin-bottom: 6px !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.dashboard-edit-section .js-widget-container .widget:hover,
.dashboard-edit-section .add-column-drop .widget:hover {
  border-color: #b8c9de;
  box-shadow: 0 2px 6px rgba(7, 36, 81, 0.07);
}

.dashboard-edit-section .widget .widget-title-label {
  font-size: 12px;
  font-weight: 650;
  color: #142638;
  line-height: 1.35;
  max-width: calc(100% - 52px);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dashboard-edit-section .widget .widget-item-actions {
  display: inline-flex;
  align-items: center;
  gap: 2px;
}

.dashboard-edit-section .widget .widget-preview-trigger {
  cursor: default;
  border-radius: 8px;
  line-height: 1;
  transition: background 0.15s ease, color 0.15s ease;
}

.dashboard-edit-section .widget .widget-preview-trigger:hover {
  background: #eef3f9;
  color: #072451 !important;
}

.dashboard-edit-section .widget .widget-drag-handle {
  opacity: 0.45;
}

.dashboard-edit-section #widget-row-container > .card {
  border-radius: 16px;
  border: 1px solid #e8edf3;
  box-shadow: 0 2px 10px rgba(7, 36, 81, 0.07);
}

/* Шапка: название слева, кнопки справа */
.dashboard-edit-section #widget-row-container .page-title.dashboard-edit-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  gap: 12px;
  width: 100%;
  margin: 0;
  padding: 12px 16px;
  float: none;
  border: none;
  border-bottom: 1px solid #eef1f6;
  border-radius: 16px 16px 0 0;
  box-shadow: none;
  background: #fff;
}

.dashboard-edit-section #widget-row-container .dashboard-edit-title {
  float: none;
  flex: 1 1 auto;
  margin: 0;
  padding: 0;
  text-align: left;
  font-size: 1.05rem;
  font-weight: 700;
  color: #072451;
  line-height: 1.3;
  min-width: 0;
}

.dashboard-edit-section #widget-row-container .dashboard-edit-actions {
  float: none;
  flex: 0 0 auto;
  margin: 0 0 0 auto !important;
  white-space: nowrap;
}

.dashboard-edit-section #widget-row-container .dashboard-edit-actions .btn {
  margin: 0 0 0 8px;
  padding: 6px 14px;
  border-radius: 12px;
}

.dashboard-edit-section #widget-row-container .card-body {
  padding: 0;
}

.dashboard-edit-section #widget-row-area {
  padding: 15px;
  margin: 0;
  float: none;
  width: 100%;
  background: #f7f9fc;
  border-radius: 0 0 16px 16px;
}

/* В колонке ряда виджеты — столбиком (как на дашборде), не в строку */
.dashboard-edit-section .add-column-drop .widget {
  display: block;
  width: 100%;
  clear: both;
  box-sizing: border-box;
}

.dashboard-edit-section .add-column-drop {
  border-radius: 15px;
}

.dashboard-edit-section .widget-row {
  margin-bottom: 15px;
  border-radius: 14px;
  border: 1px solid #e4e9f0;
  background: #fff !important;
}

.dashboard-edit-section #add-column-button {
  border-radius: 12px;
}

/* Hover-превью виджета */
.widget-preview-popover {
  position: absolute;
  z-index: 1060;
  display: none;
  overflow: hidden;
  background: #fff;
  border-radius: 14px;
  border: 1px solid #dde4ee;
  box-shadow: 0 10px 36px rgba(7, 36, 81, 0.16);
  pointer-events: auto;
}

.widget-preview-popover--sm {
  width: 250px;
  max-height: 170px;
}

.widget-preview-popover--md {
  width: min(400px, calc(100vw - 24px));
  max-height: 400px;
}

.widget-preview-popover--lg {
  width: min(700px, calc(100vw - 24px));
  max-height: min(560px, calc(100vh - 24px));
}

.widget-preview-popover.is-visible {
  display: block;
}

.widget-preview-popover-inner {
  overflow: auto;
  padding: 10px;
}

.widget-preview-popover--sm .widget-preview-popover-inner {
  max-height: 170px;
  padding: 6px 8px;
  overflow: hidden;
}

.widget-preview-popover--md .widget-preview-popover-inner {
  max-height: 400px;
}

.widget-preview-popover--lg .widget-preview-popover-inner {
  max-height: min(560px, calc(100vh - 24px));
  padding: 12px;
}

.widget-preview-popover-inner .widget-preview-fragment {
  pointer-events: none;
}

.widget-preview-popover-inner .widget-preview-fragment .card {
  margin-bottom: 0;
  box-shadow: none;
}

/* Маленькие счётчики — компактно, без лишнего воздуха */
.widget-preview-popover--sm .widget-preview-fragment .dashboard-icon-widget {
  margin-bottom: 0;
}

.widget-preview-popover--sm .widget-preview-fragment .dashboard-icon-widget .card-body {
  padding: 12px 14px !important;
}

.widget-preview-popover--sm .widget-preview-fragment .widget-icon {
  height: 44px;
  width: 44px;
}

.widget-preview-popover--sm .widget-preview-fragment .widget-icon .icon {
  width: 1.35rem;
  height: 1.35rem;
}

.widget-preview-popover--sm .widget-preview-fragment .widget-details h1 {
  font-size: 1.35rem;
}

.widget-preview-popover--sm .widget-preview-fragment .widget-details span {
  font-size: 11px;
}

/* Большие виджеты — шире, с прокруткой при необходимости */
.widget-preview-popover--lg .widget-preview-fragment .card .card-header {
  padding: 10px 12px;
  font-size: 13px;
}

.widget-preview-popover--lg .widget-preview-fragment .box-content h4 {
  font-size: 1rem;
}

.widget-preview-loading {
  padding: 28px 12px;
  text-align: center;
}

.widget-preview-popover--sm .widget-preview-loading {
  padding: 18px 12px;
}

/* === Профиль сотрудника: team_members/view === */
.team-member-profile-page {
  --tm-profile-radius: 16px;
}

@media (min-width: 992px) {
  .team-member-profile-layout {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
  }
  .team-member-profile-sidebar {
    flex: 0 0 40%;
    max-width: 40%;
    padding-right: 10px;
  }
  .team-member-profile-main {
    flex: 0 0 60%;
    max-width: 60%;
    padding-left: 10px;
  }
}

.team-member-profile-card {
  border-radius: var(--tm-profile-radius);
  overflow: hidden;
  box-shadow: 0 2px 16px rgba(7, 36, 81, 0.1);
  margin-bottom: 0;
}

.team-member-profile-card__hero {
  padding: 20px;
}

.team-member-profile-card__hero-inner .box,
.team-member-profile-card__hero-inner #profile-image-section {
  margin: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.team-member-profile-card__hero-inner #profile-image-section .box-content {
  padding: 0;
  max-width: none;
  width: 100%;
}

.team-member-profile-card__hero-inner #profile-image-section .profile-hero--side {
  flex-direction: row;
  align-items: center;
  text-align: left;
  gap: 18px;
}

.team-member-profile-card__hero-inner #profile-image-section .profile-hero__avatar-wrap {
  width: 160px;
  height: 160px;
}

.team-member-profile-card__hero-inner #profile-image-section .profile-hero__avatar {
  border-radius: 50%;
}

.team-member-profile-card__hero-inner #profile-image-section .profile-hero__avatar-initials {
  width: 100%;
  height: 100%;
  font-size: 44px;
}

.team-member-profile-card__hero-inner #profile-image-section .profile-hero__meta {
  min-width: 0;
}

.team-member-profile-card__hero-inner #profile-image-section .profile-hero__name {
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.2;
}

.team-member-profile-card__hero-inner #profile-image-section .profile-hero__stats {
  margin-top: 10px;
}

.team-member-profile-card__hero-inner #profile-image-section .profile-stat-badge {
  font-size: 13px;
  padding: 4px 10px;
}

.team-member-profile-card__hero-inner #profile-image-section .profile-stat-badge__icon {
  width: 16px;
  height: 16px;
}

.team-member-profile-card__metrics {
  padding: 12px 16px 4px;
  background: var(--bs-primary, #072451);
}

.team-member-profile-card__awards {
  padding: 8px 16px 16px;
  background: var(--bs-primary, #072451);
}

.tm-metrics-grid {
  margin-left: -4px;
  margin-right: -4px;
}

.tm-metric-item {
  padding-left: 4px;
  padding-right: 4px;
  margin-bottom: 8px;
}

.tm-metric-card {
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 12px;
  padding: 8px 6px;
  text-align: center;
  min-height: 88px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%;
}

.tm-metric-card__value {
  font-size: 28px;
  font-weight: 700;
  line-height: 1.1;
  color: #fff;
}

.tm-metric-card__label {
  margin-top: 4px;
  font-size: 11px;
  line-height: 1.25;
  color: rgba(255, 255, 255, 0.85);
}

.tm-awards-section__title {
  margin: 0 0 12px;
  text-align: center;
  font-size: 15px;
  font-weight: 600;
  color: #fff;
}

.tm-awards-scroll {
  max-height: 360px;
  overflow-y: auto;
  scrollbar-width: thin;
}

.tm-awards-grid {
  margin-left: -4px;
  margin-right: -4px;
}

.tm-award-item {
  padding-left: 4px;
  padding-right: 4px;
  margin-bottom: 8px;
}

.tm-award-card {
  background: #fff;
  border: 1px solid rgba(255, 255, 255, 0.2);
  padding: 10px 8px;
  text-align: center;
  border-radius: 12px;
  min-height: 130px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  height: 100%;
}

.tm-award-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
}

.tm-award-card--locked {
  opacity: 0.85;
  filter: grayscale(40%);
}

.tm-award-card img {
  width: 52px;
  height: 52px;
  object-fit: contain;
  margin-bottom: 6px;
}

.tm-award-card__title {
  font-size: 12px;
  font-weight: 600;
  color: #072451;
  min-height: 18px;
  line-height: 1.25;
}

.tm-award-card__rarity {
  font-size: 11px;
  margin-top: 4px;
}

.team-member-profile-tabs {
  border-top: 0;
  border-radius: var(--tm-profile-radius) var(--tm-profile-radius) 0 0;
  background: #fff;
  box-shadow: 0 1px 0 rgba(7, 36, 81, 0.08);
  margin-bottom: 0;
}

.team-member-profile-tab-content {
  margin-top: 0;
  background: #fff;
  border-radius: 0 0 var(--tm-profile-radius) var(--tm-profile-radius);
  box-shadow: 0 2px 16px rgba(7, 36, 81, 0.06);
  padding: 16px;
  min-height: 200px;
}

.team-member-profile-tab-content > .tab-pane.active {
  animation: tm-tab-fade 0.2s ease;
}

@keyframes tm-tab-fade {
  from { opacity: 0.6; }
  to { opacity: 1; }
}

@media (min-width: 992px) {
  .team-member-profile-main {
    display: flex;
    flex-direction: column;
  }
  .team-member-profile-tabs {
    flex-shrink: 0;
  }
  .team-member-profile-tab-content {
    flex: 1 1 auto;
  }
}

/* === Календарь событий (/events) === */
.events-page {
  display: flex;
  flex-direction: column;
  min-height: 0;
}
.events-page .page-title h1 {
  font-weight: 800;
  color: #092f6b;
}
.events-calendar-card {
  border: 1px solid #eef0f4;
  border-radius: 15px;
  box-shadow: 0 1px 3px rgba(9, 47, 107, 0.06);
  overflow: hidden;
}
.events-calendar-card .events-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 14px 8px;
  border-bottom: 1px solid #f1f3f7;
  background: #fafbfc;
}
.events-calendar-card .events-toolbar-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  flex: 1 1 auto;
  min-width: 0;
}
.events-filter-item {
  flex: 0 1 auto;
  min-width: 200px;
}
.events-filter-item--labels {
  width: 220px;
  max-width: 100%;
}
.events-filter-item--types {
  width: 280px;
  max-width: 100%;
}
.events-filter-item .select2-container {
  width: 100% !important;
  display: block;
}
.events-filter-item .filter-multi-select {
  display: block;
  width: 100%;
}
body:not([data-color="F2F2F2"]) .events-filter-item .filter-multi-select .dropdown-toggle {
  position: relative;
  display: flex !important;
  align-items: center !important;
  width: 100%;
  min-height: 32px;
  height: 32px;
  padding: 0 34px 0 12px !important;
  text-align: left;
  border-radius: 10px !important;
  border: 1px solid #e3e8ef !important;
  background: #fff !important;
  color: #4e5e6a !important;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.2;
  box-shadow: none !important;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
body:not([data-color="F2F2F2"]) .events-filter-item .filter-multi-select .dropdown-toggle.caret::after,
body:not([data-color="F2F2F2"]) .events-filter-item .filter-multi-select .caret::after {
  position: absolute !important;
  right: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  float: none !important;
  margin: 0 !important;
}
body:not([data-color="F2F2F2"]) .events-filter-item .filter-multi-select .btn.dropdown-toggle::after {
  position: absolute !important;
  right: 12px !important;
  top: 50% !important;
  transform: translateY(-50%);
  margin: 0 !important;
  vertical-align: middle;
}
body:not([data-color="F2F2F2"]) .events-filter-item .filter-multi-select .dropdown-toggle:hover,
body:not([data-color="F2F2F2"]) .events-filter-item .filter-multi-select .dropdown-toggle:focus {
  background: #fff !important;
  border-color: #c5d4e8 !important;
  color: #092f6b !important;
}
.events-filter-multiselect .DTTT_container {
  margin: 0;
  width: 100%;
}
.events-calendar-card .events-calendar-body {
  padding: 8px 12px 10px;
}
.events-page {
  padding-bottom: 0;
}
.events-page .events-calendar-card {
  margin-bottom: 0;
}
.events-page-embedded .events-embedded-title {
  padding: 10px 12px 0;
  border-bottom: none;
}
.events-page-embedded .events-toolbar {
  border-radius: 0;
}
#event-calendar .fc .fc-toolbar.fc-header-toolbar,
#event-calendar .fc .fc-toolbar.fc-footer-toolbar {
  margin-bottom: 8px !important;
  gap: 8px;
}
#event-calendar .fc-toolbar-title {
  font-weight: 800 !important;
  text-transform: uppercase;
  color: #092f6b !important;
  font-size: 1.05rem;
  letter-spacing: 0.02em;
  margin: 0 12px 0 0 !important;
  padding: 0;
  line-height: 1.2;
}
#event-calendar .fc-toolbar-chunk {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
#event-calendar .fc .fc-button-group {
  display: inline-flex !important;
  align-items: center;
  gap: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}
#event-calendar .fc-direction-ltr .fc-button-group > .fc-button {
  border-radius: 10px !important;
  margin: 0 !important;
  border-left-width: 1px !important;
}
#event-calendar .fc-direction-ltr .fc-button-group > .fc-button:not(:first-child) {
  margin-left: 8px !important;
}
#event-calendar .fc-direction-ltr .fc-button-group > .fc-button:not(:last-child) {
  border-top-right-radius: 10px !important;
  border-bottom-right-radius: 10px !important;
}
#event-calendar .fc-direction-ltr .fc-button-group > .fc-button:not(:first-child) {
  border-top-left-radius: 10px !important;
  border-bottom-left-radius: 10px !important;
}
#event-calendar .fc-button {
  border-radius: 10px !important;
  border: 1px solid #e3e8ef !important;
  background: #fff !important;
  color: #4e5e6a !important;
  font-size: 13px;
  font-weight: 500;
  padding: 6px 14px !important;
  margin: 0 !important;
  box-shadow: none !important;
  float: none !important;
}
#event-calendar .fc-button:hover {
  background: #f5f6f8 !important;
  border-color: #d8dee8 !important;
  color: #092f6b !important;
}
#event-calendar .fc-button:focus {
  box-shadow: none !important;
}
#event-calendar .fc-button-primary:not(:disabled).fc-button-active,
#event-calendar .fc-button-primary:not(:disabled):active {
  background: #f1f1f5 !important;
  border-color: #e3e8ef !important;
  color: #092f6b !important;
  font-weight: 600;
}
#event-calendar .fc-col-header-cell-cushion,
#event-calendar .fc-daygrid-day-number {
  color: #092f6b !important;
  font-weight: 600;
  text-decoration: none;
}
#event-calendar .fc-scrollgrid {
  border-radius: 12px;
  overflow: hidden;
  border-color: #eef0f4 !important;
}
#event-calendar .fc-theme-standard td,
#event-calendar .fc-theme-standard th {
  border-color: #eef0f4 !important;
}
#event-calendar .fc-daygrid-day.fc-day-today {
  background: rgba(9, 47, 107, 0.06) !important;
}
#event-calendar .fc-event {
  border: none !important;
  background: transparent !important;
  margin: 1px 2px !important;
}
#event-calendar .vst-fc-event-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  width: 100%;
  padding: 3px 8px;
  color: #fff;
  font-size: 12px;
  line-height: 1.35;
  border-radius: 8px;
  cursor: pointer;
  box-sizing: border-box;
}
#event-calendar .vst-fc-event-chip-title {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#event-calendar .vst-fc-event-chip .icon-14,
#event-calendar .vst-fc-event-chip svg {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
body:not([data-color="F2F2F2"]) .events-page .events-filter-item .select2-container .select2-choice {
  display: flex !important;
  align-items: center !important;
  border-radius: 10px !important;
  border: 1px solid #e3e8ef !important;
  min-height: 32px;
  height: 32px;
  line-height: 1.2 !important;
  padding: 0 28px 0 12px !important;
  background: #fff !important;
  box-shadow: none !important;
}
body:not([data-color="F2F2F2"]) .events-page .events-filter-item .select2-container .select2-chosen {
  display: block;
  line-height: 1.2 !important;
  margin: 0 !important;
  padding: 0 !important;
  height: auto !important;
}
body:not([data-color="F2F2F2"]) .events-page .events-filter-item .filter-multi-select .btn.btn-default.dropdown-toggle {
  border-radius: 10px !important;
}
body:not([data-color="F2F2F2"]) .events-page .events-filter-item .select2-container .select2-choice .select2-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
  right: 8px;
  width: 18px;
  height: 100%;
  border-left: none;
  background: transparent;
}
body:not([data-color="F2F2F2"]) .events-page .events-filter-item .select2-container .select2-choice .select2-arrow b {
  margin-top: 0;
  position: static;
}
@media (max-width: 767px) {
  .events-page .page-title .events-page-actions {
    display: none !important;
  }
  .events-calendar-card .events-toolbar {
    padding: 10px 12px 8px;
  }
  .events-filter-item,
  .events-filter-item--labels,
  .events-filter-item--types {
    width: 100%;
    min-width: 0;
  }
  .events-filter-item .filter-multi-select .dropdown-toggle {
    min-width: 0;
  }
  #event-calendar .fc .fc-toolbar.fc-header-toolbar {
    flex-direction: column;
    align-items: stretch;
  }
  #event-calendar .fc-toolbar-chunk {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 8px;
  }
  #event-calendar .fc-toolbar-title {
    width: 100%;
    margin: 0 0 6px 0 !important;
  }
  #event-calendar .fc .fc-toolbar.fc-footer-toolbar .fc-toolbar-chunk:last-child {
    justify-content: center;
  }
  .events-calendar-card .events-calendar-body {
    padding: 8px 8px 12px;
  }
}

/* === Задачи: список /tasks/all_tasks === */
.tasks-page {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
  padding-bottom: 0;
}
.tasks-page .page-title h1 {
  font-weight: 800;
  color: #092f6b;
}
.tasks-page #tasks-table-card {
  border: 1px solid #eef0f4;
  border-radius: 15px;
  box-shadow: 0 1px 3px rgba(9, 47, 107, 0.06);
  flex: 1 1 auto;
  min-height: 0;
  margin-bottom: 0;
}
.tasks-page #tasks-table-card .dataTables_wrapper {
  display: flex;
  flex-direction: column;
  min-height: 0;
}
.tasks-page #tasks-table-card .dataTables_scrollBody {
  flex: 1 1 auto;
  min-height: 220px;
}
.tasks-page #tasks-table-card.vst-table-infinite-card .dataTables_wrapper {
  flex: 1 1 auto;
  min-height: 0;
}
.tasks-page #tasks-table-card.vst-table-infinite-card .vst-table-infinite-mode .datatable-tools {
  display: none !important;
  min-height: 0;
  margin: 0;
  padding: 0;
}
.tasks-page #task-table tbody tr {
  cursor: pointer;
}
/* Таблица задач: на всю ширину карточки */
.tasks-page #task-table_wrapper {
  width: 100%;
}
.tasks-page #task-table_wrapper .dataTables_scroll {
  width: 100% !important;
  clear: both;
}
.tasks-page #task-table_wrapper .dataTables_scrollHead table,
.tasks-page #task-table_wrapper .dataTables_scrollBody table {
  table-layout: fixed !important;
  width: auto;
  min-width: 100%;
}
/* Полоска статуса — отдельная колонка 5px (шапка и тело совпадают) */
.tasks-page #task-table_wrapper th.col-status-strip,
.tasks-page #task-table_wrapper td.col-status-strip {
  width: 5px !important;
  min-width: 5px !important;
  max-width: 5px !important;
  padding: 0 !important;
  border-right: none !important;
  overflow: hidden;
}
.tasks-page #task-table_wrapper td.col-status-strip.list-status-border {
  border-left: none !important;
}
/* Таблица задач: выравнивание, разделители */
.tasks-page #task-table_wrapper .dataTables_scrollHead thead th,
.tasks-page #task-table_wrapper .dataTables_scrollBody tbody td:not(.col-title) {
  text-align: left !important;
  vertical-align: middle !important;
  white-space: nowrap !important;
  word-break: normal !important;
  box-sizing: border-box !important;
}
.tasks-page #task-table_wrapper .dataTables_scrollBody tbody td.col-title {
  text-align: left !important;
  vertical-align: middle !important;
  white-space: normal !important;
  word-break: break-word !important;
  overflow-wrap: anywhere;
  overflow: hidden;
  line-height: 1.35;
  box-sizing: border-box !important;
}
.tasks-page #task-table_wrapper th.col-title,
.tasks-page #task-table_wrapper td.col-title {
  padding: 8px 10px !important;
  box-sizing: border-box !important;
}
.tasks-page #task-table_wrapper th.col-title {
  white-space: nowrap !important;
  overflow: hidden;
}
.tasks-page #task-table_wrapper td.col-title .task-title-cell {
  display: block;
  max-width: 100%;
  width: 100%;
  box-sizing: border-box;
  word-break: break-word;
  overflow-wrap: anywhere;
}
.tasks-page #task-table_wrapper .dataTables_scrollHead thead th.option,
.tasks-page #task-table_wrapper .dataTables_scrollHead thead th.col-options,
.tasks-page #task-table_wrapper .dataTables_scrollBody tbody td.option,
.tasks-page #task-table_wrapper .dataTables_scrollBody tbody td.col-options {
  text-align: center !important;
}
.tasks-page #task-table_wrapper .dataTables_scrollBody tbody td {
  border-right: 1px solid #f2f4f8;
}
.tasks-page #task-table_wrapper .dataTables_scrollBody tbody td:last-child {
  border-right: none;
}
.tasks-page #task-table_wrapper td.col-assigned,
.tasks-page #task-table_wrapper th.col-assigned {
  text-align: left !important;
  padding-left: 10px !important;
  padding-right: 10px !important;
}
.tasks-page #task-table_wrapper td.col-assigned a {
  display: inline-flex;
  align-items: center;
  line-height: 0;
}
.tasks-page #task-table_wrapper td.col-assigned .avatar {
  margin: 0 !important;
}
.tasks-page #task-table_wrapper td.col-collaborators,
.tasks-page #task-table_wrapper th.col-collaborators {
  padding-left: 10px !important;
  padding-right: 10px !important;
}
.tasks-page #task-table_wrapper td.col-collaborators .task-collaborators-wrap {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  width: 102px;
  max-width: 102px;
}
.tasks-page #task-table_wrapper td.col-collaborators .task-collaborators-wrap > a {
  flex: 0 0 30px;
  display: inline-flex;
  line-height: 0;
}
.tasks-page #task-table_wrapper td.col-collaborators .avatar {
  margin: 0 !important;
}
.tasks-page #task-table_wrapper td.col-id,
.tasks-page #task-table_wrapper th.col-id {
  white-space: nowrap !important;
  box-sizing: border-box !important;
  padding-left: 10px !important;
  padding-right: 10px !important;
}
.tasks-page #task-table_wrapper td.col-id.col-task-check,
.tasks-page #task-table_wrapper th.col-id.col-task-check {
  min-width: 88px;
}
.tasks-page #task-table_wrapper th.col-start,
.tasks-page #task-table_wrapper td.col-start {
  box-sizing: border-box !important;
  white-space: nowrap !important;
  width: 110px !important;
  min-width: 110px !important;
  max-width: 110px !important;
}
.tasks-page #task-table_wrapper th.col-deadline,
.tasks-page #task-table_wrapper td.col-deadline {
  box-sizing: border-box !important;
  white-space: nowrap !important;
  width: 115px !important;
  min-width: 115px !important;
  max-width: 115px !important;
}
.tasks-page #task-table_wrapper th.col-related,
.tasks-page #task-table_wrapper td.col-related,
.tasks-page #task-table_wrapper th.col-status,
.tasks-page #task-table_wrapper td.col-status {
  box-sizing: border-box !important;
  white-space: nowrap !important;
}
.tasks-page #task-table_wrapper td.col-assigned,
.tasks-page #task-table_wrapper th.col-assigned {
  min-width: 120px;
  box-sizing: border-box !important;
}
.tasks-page #task-table_wrapper td.col-assigned {
  text-align: center !important;
}
.tasks-page #task-table_wrapper td.col-title .task-title-priority {
  display: inline-flex;
  align-items: center;
  vertical-align: middle;
  flex-shrink: 0;
}
.tasks-page #task-table_wrapper td.col-title .task-title-priority .priority-badge,
.tasks-page #task-table_wrapper td.col-title .task-title-priority .sub-task-icon.priority-badge {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  max-width: 22px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  flex-shrink: 0;
  box-sizing: border-box !important;
  line-height: 1 !important;
}
.tasks-page #task-table_wrapper td.col-title .task-title-priority .priority-badge svg,
.tasks-page #task-table_wrapper td.col-title .task-title-priority .priority-badge .icon {
  width: 14px !important;
  height: 14px !important;
  flex-shrink: 0;
}
.tasks-page #task-table_wrapper td.col-title .task-title-meta {
  display: inline-block;
  vertical-align: middle;
  margin-left: 6px;
}
.tasks-page #task-table_wrapper td.col-title .float-end {
  float: right;
  margin-left: 6px;
}
.tasks-page #task-table_wrapper td.col-title a {
  display: inline;
}
.tasks-page .filter-section-container {
  border-radius: 12px 12px 0 0;
}
@media (max-width: 767px) {
  .tasks-page .page-title .title-button-group {
    display: none !important;
  }
}

/* Цветной кружок + feather-иконка (leave_types, справочники) */
.vst-icon-dot {
  width: 28px;
  height: 28px;
  min-width: 28px;
  min-height: 28px;
  border-radius: 50%;
  flex: 0 0 28px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  align-self: center;
  color: #fff;
  line-height: 0;
  overflow: hidden;
  flex-shrink: 0;
  position: relative;
  vertical-align: middle;
}

.vst-icon-dot i,
.vst-icon-dot svg {
  display: block !important;
  width: 15px !important;
  height: 15px !important;
  margin: 0 !important;
  padding: 0 !important;
  stroke: #fff !important;
  color: #fff !important;
  flex-shrink: 0;
  vertical-align: middle;
  position: relative;
  top: 0;
  left: 0;
}

.vst-icon-dot--list {
  width: 22px;
  height: 22px;
  min-width: 22px;
  min-height: 22px;
  flex-basis: 22px;
  margin-right: 8px;
}

.vst-icon-dot--list i,
.vst-icon-dot--list svg {
  width: 12px !important;
  height: 12px !important;
  /* feather SVG чуть выше геометрического центра */
  transform: translateY(1px);
}

.leave-type-title-cell {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  min-width: 0;
  vertical-align: middle;
}

#leave-type-table td:first-child {
  vertical-align: middle !important;
}