/* OKKwork — единое меню профиля (все этапы и рабочие страницы) */

:root {
  /* Единая ширина бокового меню (эталон — /mkk/). Менять только здесь. */
  --okkwork-user-menu-rail-width: 280px;
  --okkwork-menu-rail-width: var(--okkwork-user-menu-rail-width);
  /* Синхрон с открытием профиля (вариант 11, ease-in-out 400ms) */
  --okkwork-profile-slide-ease: ease-in-out;
  --okkwork-profile-slide-ms: 0.4s;
}

/* Аватар в шапке — всегда круг, OAuth-фото или okkwork-default-avatar.png */
.okkwork-user-menu-host.has-user-avatar .okkwork-user-header-avatar {
  display: block !important;
  background-color: #e8eef3;
}

.okkwork-user-menu-host.has-user-avatar .okkwork-user-header-fallback {
  opacity: 0 !important;
  pointer-events: none;
}

.okkwork-user-menu .Pixso-frame-281_116 {
  width: 100% !important;
  max-width: var(--okkwork-user-menu-rail-width, 280px) !important;
}

.okkwork-user-menu .Pixso-rectangle-281_118 {
  width: 100% !important;
  max-width: var(--okkwork-user-menu-rail-width, 280px) !important;
  border-radius: 12px !important;
  background:
    linear-gradient(180deg, rgba(220, 235, 250, 0.98) 0%, rgba(236, 245, 252, 0.96) 42%, rgba(255, 255, 255, 1) 100%) !important;
  border: 1px solid rgba(6, 88, 162, 0.14) !important;
  box-shadow: 0 16px 40px rgba(6, 88, 162, 0.16) !important;
}

.okkwork-user-menu .Pixso-rectangle-281_125,
.okkwork-user-menu .Pixso-rectangle-281_126,
.okkwork-user-menu .Pixso-rectangle-281_131,
.okkwork-user-menu .Pixso-rectangle-281_133,
.okkwork-user-menu .Pixso-rectangle-281_135,
.okkwork-user-menu .Pixso-rectangle-281_141 {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  overflow: visible !important;
}

.okkwork-user-menu .Pixso-rectangle-281_125 {
  background-image: url("./icon/okkwork-user-menu-icons/c9e46b6a52637bc2a6b41513caa33750ac1fc303.png") !important;
}

.okkwork-user-menu .Pixso-rectangle-281_126 {
  background-image: url("./icon/okkwork-user-menu-icons/07365eb145a31140b318edabce560798cd90f250.png") !important;
}

.okkwork-user-menu .Pixso-rectangle-281_131 {
  background-image: url("./icon/okkwork-user-menu-icons/aa8c8b064e5525a4da544486d3dd9d35f687df51.png") !important;
}

.okkwork-user-menu .Pixso-rectangle-281_133 {
  background-image: url("./icon/okkwork-user-menu-icons/okkwork-menu-marketplace.png") !important;
}

.okkwork-user-menu .Pixso-rectangle-281_135 {
  background-image: url("./icon/okkwork-user-menu-icons/okkwork-menu-birzha-zakazov.png") !important;
}

.okkwork-user-menu .Pixso-rectangle-281_141 {
  background-image: url("./icon/okkwork-user-menu-icons/92eaa6cabb72b6b7802c45c40822363c70792c20.png") !important;
}

.okkwork-user-menu .okkwork-user-menu__icon-img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  pointer-events: none !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.okkwork-user-menu .Pixso-paragraph-281_127 {
  font-family: "Rubik-Bold", "Rubik", sans-serif !important;
  font-weight: 700 !important;
  color: rgba(6, 88, 162, 1) !important;
}

.okkwork-user-menu .Pixso-paragraph-281_128 {
  font-family: "Rubik-Light", "Rubik", sans-serif !important;
  font-weight: 300 !important;
  color: rgba(6, 88, 162, 1) !important;
}

/* Bitrix24-style боковая панель профиля */
body.okkwork-user-menu-slider-open {
  overflow: hidden !important;
  overscroll-behavior: none;
}

.okkwork-user-menu-slider-backdrop {
  position: fixed;
  inset: 0;
  /* Ниже профиля (101550) и меню (101560); выше .Pixso-frame-219_2 (10100) */
  z-index: 101500;
  background: rgba(30, 41, 59, 0.34);
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
  opacity: 0;
  transition: opacity 0.28s ease;
  pointer-events: none;
}

.okkwork-user-menu-slider-backdrop[hidden] {
  display: none !important;
}

.okkwork-user-menu-slider-backdrop.is-visible {
  opacity: 1;
  pointer-events: auto;
}

.okkwork-user-menu-book[hidden],
.okkwork-user-menu-slider-backdrop[hidden] {
  display: none !important;
}

/* —— Книжка: только меню (профиль — отдельный fixed-слой на body) —— */
.okkwork-user-menu-book {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: auto !important;
  bottom: 0 !important;
  display: block;
  width: var(--okkwork-user-menu-slider-width, var(--okkwork-user-menu-rail-width, 280px)) !important;
  min-width: var(--okkwork-user-menu-rail-width, 280px) !important;
  max-width: var(--okkwork-user-menu-rail-width, 280px) !important;
  height: 100vh !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  z-index: 101560 !important;
  margin: 0 !important;
  padding: 0 !important;
  filter: none !important;
  transform: translateX(100%);
  transition:
    transform var(--okkwork-profile-slide-ms) var(--okkwork-profile-slide-ease),
    width var(--okkwork-profile-slide-ms) var(--okkwork-profile-slide-ease);
  overflow: hidden;
  box-shadow: -12px 0 40px rgba(15, 23, 42, 0.18);
  pointer-events: auto;
}

.okkwork-user-menu-book.is-slider-open {
  transform: translateX(0);
}

.okkwork-user-menu-book.is-slider-open.is-profile-open {
  transition: transform var(--okkwork-profile-slide-ms) var(--okkwork-profile-slide-ease) !important;
}

/* При открытом профиле — только rail меню справа (профиль — отдельный слой) */
body.okkwork-profile-panel-open .okkwork-user-menu-book.is-slider-open,
.okkwork-user-menu-book.is-profile-open.is-slider-open {
  width: var(--okkwork-menu-rail-width, 280px) !important;
  min-width: var(--okkwork-menu-rail-width, 280px) !important;
  max-width: var(--okkwork-menu-rail-width, 280px) !important;
  left: auto !important;
  right: 0 !important;
  /* Без transition width — убирает «блик» меню при открытии профиля */
  transition: transform var(--okkwork-profile-slide-ms) var(--okkwork-profile-slide-ease) !important;
}

.okkwork-user-menu-book > .okkwork-user-menu.is-slider {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  left: auto !important;
  bottom: auto !important;
  flex-shrink: 0;
  width: 100% !important;
  min-width: var(--okkwork-user-menu-rail-width, 280px) !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  z-index: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  transition: width 0.32s cubic-bezier(0.32, 0.72, 0, 1);
  overflow: hidden;
  box-shadow: none !important;
}

.okkwork-user-menu-book.is-profile-open > .okkwork-user-menu.is-slider {
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  border-left: 1px solid transparent;
  transition: border-color 0.35s ease 0.05s;
}

.okkwork-user-menu-book.is-profile-open.is-profile-rail-settled > .okkwork-user-menu.is-slider {
  border-left-color: #cbd5e1;
}

/* —— Compact Rail (вариант 07) — боковая панель —— */
.okkwork-user-menu.is-slider {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: auto !important;
  bottom: 0 !important;
  width: var(--okkwork-user-menu-slider-width, var(--okkwork-user-menu-rail-width, 280px)) !important;
  min-width: var(--okkwork-user-menu-rail-width, 280px) !important;
  max-width: var(--okkwork-user-menu-rail-width, 280px) !important;
  height: 100vh !important;
  height: 100dvh !important;
  max-height: 100vh !important;
  max-height: 100dvh !important;
  z-index: 101510 !important;
  margin: 0 !important;
  padding: 0 !important;
  filter: none !important;
  transform: translateX(100%);
  transition: transform 0.32s cubic-bezier(0.32, 0.72, 0, 1);
  overflow: hidden;
  box-shadow: -12px 0 40px rgba(15, 23, 42, 0.18);
}

.okkwork-user-menu-book .okkwork-user-menu.is-slider {
  position: relative !important;
  transform: none !important;
}

.okkwork-user-menu.is-slider.is-slider-open {
  transform: translateX(0);
}

.okkwork-user-menu-book .okkwork-user-menu.is-slider.is-slider-open {
  transform: none !important;
}

.okkwork-user-menu.is-slider .Pixso-frame-281_116,
.okkwork-user-menu.is-slider .Pixso-rectangle-281_118 {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  border-radius: 0 !important;
}

.okkwork-user-menu.is-slider .Pixso-rectangle-281_118 {
  border: none !important;
  border-left: 1px solid #cbd5e1 !important;
  box-shadow: none !important;
  background: #f8fafc !important;
  overflow: hidden !important;
}

.okkwork-user-menu-rail {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 0;
  font-family: "Rubik", system-ui, sans-serif;
}

.okkwork-user-menu-rail__head {
  display: grid;
  grid-template-columns: 56px 1fr;
  gap: 12px;
  align-items: center;
  padding: 16px;
  background: #fff;
  border-bottom: 1px solid #e2e8f0;
  flex-shrink: 0;
}

.okkwork-user-menu-rail__head .vector-wrapper-281_119 {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  right: auto !important;
  width: 56px !important;
  height: 56px !important;
  margin: 0 !important;
}

.okkwork-user-menu-rail__head .okkwork-user-avatar-btn {
  width: 22px;
  height: 22px;
  font-size: 14px;
}

.okkwork-user-menu-rail__head-text {
  min-width: 0;
}

.okkwork-user-menu-rail__head .Pixso-paragraph-281_127,
.okkwork-user-menu-rail__head .Pixso-paragraph-281_128 {
  position: static !important;
  left: auto !important;
  top: auto !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
}

.okkwork-user-menu-rail__head .Pixso-paragraph-281_127 {
  font-size: 14px !important;
  line-height: 1.3;
}

.okkwork-user-menu-rail__head .Pixso-paragraph-281_128 {
  font-size: 12px !important;
  margin-top: 2px !important;
}

.okkwork-user-menu-rail__nav {
  flex: 1;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 8px 0;
}

.okkwork-user-menu-rail__row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 4px 12px;
  min-height: 52px;
}

.okkwork-user-menu-rail__row:hover {
  background: rgba(6, 88, 162, 0.05);
}

.okkwork-user-menu-rail__row .Pixso-rectangle-281_126,
.okkwork-user-menu-rail__row .Pixso-rectangle-281_131,
.okkwork-user-menu-rail__row .Pixso-rectangle-281_133,
.okkwork-user-menu-rail__row .Pixso-rectangle-281_135,
.okkwork-user-menu-rail__row .Pixso-rectangle-281_141 {
  position: static !important;
  left: auto !important;
  top: auto !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  flex-shrink: 0;
  margin: 0 !important;
  border-radius: 10px;
  background-color: rgba(6, 88, 162, 0.08) !important;
  background-size: 34px 34px !important;
  background-position: center !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
}

.okkwork-user-menu-rail__row .okkwork-user-menu__icon-img {
  width: 34px !important;
  height: 34px !important;
  max-width: 34px !important;
  max-height: 34px !important;
  object-fit: contain !important;
}

.okkwork-user-menu-rail__row a.okkwork-user-profile-link,
.okkwork-user-menu-rail__row .Pixso-paragraph-281_130,
.okkwork-user-menu-rail__row .Pixso-paragraph-281_132,
.okkwork-user-menu-rail__row .Pixso-paragraph-281_134,
.okkwork-user-menu-rail__row .Pixso-paragraph-281_140 {
  position: static !important;
  left: auto !important;
  top: auto !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: rgba(81, 95, 108, 1) !important;
  text-decoration: none;
  flex: 1;
  min-width: 0;
}

.okkwork-user-menu-rail__row .Pixso-paragraph-281_140 {
  cursor: default;
  opacity: 0.7;
}

.okkwork-user-menu-rail__row--soon {
  cursor: default;
}

.okkwork-user-menu-rail__row--soon:hover {
  background: rgba(6, 88, 162, 0.05);
}

.okkwork-user-menu-soon-badge {
  --okkwork-soon-dash: rgba(138, 151, 165, 0.92);
  position: relative;
  flex-shrink: 0;
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  padding: 3px 11px;
  border-radius: 15px;
  border: none;
  background: transparent;
  color: var(--okkwork-soon-dash);
  font-family: "Rubik", sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: 0;
  pointer-events: none;
  user-select: none;
  z-index: 0;
}

.okkwork-user-menu-soon-badge::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  z-index: -1;
  background: center / 100% 100% no-repeat
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'%3E%3Crect x='0.5' y='0.5' width='calc(100%25%20-%201px)' height='calc(100%25%20-%201px)' rx='15' ry='15' fill='none' stroke='%238a97a5' stroke-width='1' stroke-dasharray='2%202' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E");
}

.okkwork-user-menu-rail__divider {
  position: static !important;
  left: auto !important;
  top: auto !important;
  width: calc(100% - 32px) !important;
  height: 1px !important;
  margin: 8px 16px !important;
  border: none !important;
  background: repeating-linear-gradient(
    90deg,
    rgba(138, 151, 165, 0.55) 0 2px,
    transparent 2px 4px
  ) !important;
  background-color: transparent !important;
  background-size: 100% 1px !important;
}

.okkwork-user-menu-rail__foot {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  padding: 14px 16px 20px;
  border-top: 1px solid #e2e8f0;
  background: #fff;
  flex-shrink: 0;
}

.okkwork-user-menu-rail__foot .Pixso-rectangle-281_125 {
  position: static !important;
  left: auto !important;
  top: auto !important;
  width: 40px !important;
  height: 40px !important;
  order: 2;
  border-radius: 10px;
  background-color: rgba(200, 48, 48, 0.08) !important;
  background-size: 28px 28px !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
}

.okkwork-user-menu-rail__foot .okkwork-user-menu__icon-img--logout {
  width: 28px !important;
  height: 28px !important;
}

.okkwork-user-menu-rail__foot .Pixso-text-281_124 {
  position: static !important;
  left: auto !important;
  top: auto !important;
  width: auto !important;
  margin: 0 !important;
  cursor: pointer;
  color: rgb(200, 48, 48) !important;
  font-size: 15px !important;
}

/* Подтверждение выхода и редактор аватара — поверх боковой панели */
body.okkwork-user-menu-slider-open .okkwork-logout-confirm,
body.okkwork-user-menu-slider-open .okkwork-avatar-editor {
  z-index: 101600 !important;
}
