/*
  SupportBridge production modal hard polish.
  Repair195:
  - hard containment for "Текущая операция" tile;
  - marquee strictly inside tile;
  - modal close button centering.
*/

.sb-modal-close-fix {
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  min-height: 40px !important;
  max-width: 40px !important;
  max-height: 40px !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  text-align: center !important;
  vertical-align: middle !important;
}

.sb-modal-close-fix svg,
.sb-modal-close-fix i {
  display: block !important;
  margin: auto !important;
  flex: 0 0 auto !important;
}

.sb-agent-op-hard-tile {
  position: relative !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  contain: paint !important;
}

.sb-agent-op-hard-tile,
.sb-agent-op-hard-tile * {
  box-sizing: border-box !important;
}

.sb-agent-op-hard-tile > *,
.sb-agent-op-hard-tile span,
.sb-agent-op-hard-tile div,
.sb-agent-op-hard-tile p,
.sb-agent-op-hard-tile b,
.sb-agent-op-hard-tile strong {
  min-width: 0 !important;
  max-width: 100% !important;
}

.sb-agent-op-hard-value {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}

.sb-agent-op-hard-clip {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  position: relative !important;
  line-height: 1.25 !important;
}

.sb-agent-op-hard-text {
  display: inline-block !important;
  width: max-content !important;
  max-width: none !important;
  min-width: 100% !important;
  padding-right: 44px !important;
  white-space: nowrap !important;
  will-change: transform;
}

.sb-agent-op-hard-clip.is-animated .sb-agent-op-hard-text {
  animation: sb-agent-op-hard-marquee var(--sb-agent-op-hard-duration, 10s) linear infinite;
}

.sb-agent-op-hard-tile:hover .sb-agent-op-hard-text {
  animation-play-state: paused;
}

@keyframes sb-agent-op-hard-marquee {
  0% {
    transform: translateX(0);
  }
  12% {
    transform: translateX(0);
  }
  88% {
    transform: translateX(calc(-1 * var(--sb-agent-op-hard-distance, 0px)));
  }
  100% {
    transform: translateX(calc(-1 * var(--sb-agent-op-hard-distance, 0px)));
  }
}

@media (prefers-reduced-motion: reduce) {
  .sb-agent-op-hard-clip.is-animated .sb-agent-op-hard-text {
    animation: none !important;
    transform: none !important;
  }
}
