

/* ===== ШКОЛА ХОДЬБЫ НА ПРОТЕЗАХ · единый стеклянный стиль GetCourse =====
   Содержимое: 1) боковая панель; 2) тренинги, подтренинги, уроки, шапка урока,
   ответы и комментарии, кнопки, расписание, календарь, дерево страниц, блок кураторов. */

/* ################ 1. БОКОВАЯ ПАНЕЛЬ ################ */
/* ===== ШХП · боковая панель GetCourse · стекло ===== */
:root {
  --shp-navy: 6, 32, 65;
  --shp-teal: 77, 160, 191;
  --shp-gray: 70, 74, 82;
  --shp-accent: 255, 107, 53;
}

/* Панель: градиент школы (NAVY → TEAL), на нём видно стекло */
.gc-account-leftbar {
  width: 75px;
  background: linear-gradient(180deg, rgb(6,32,65) 0%, rgb(14,78,118) 55%, rgb(77,160,191) 100%) !important;
  font-family: Gilroy, Montserrat, Arial, sans-serif;
}
.gc-account-leftbar .gc-account-user-menu,
.gc-account-leftbar .toggle-link {
  width: 75px;
  background: transparent !important;
}
.gc-account-leftbar .toggle-link img { filter: brightness(0) invert(1); }

/* Скрываем лишнее */
.menu-item-marathon,
.topNotitication-notice,
.gc-account-leftbar .menu-item-label {
  display: none !important;
}

/* Кнопки меню — стеклянные плитки */
.gc-account-leftbar .gc-account-user-menu li a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 63px !important;
  height: 63px !important;
  margin: 6px auto !important;
  padding: 0 !important;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.12) !important;
  -webkit-backdrop-filter: blur(14px) saturate(160%);
  backdrop-filter: blur(14px) saturate(160%);
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 16px;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.20),
              inset 0 1px 0 rgba(255, 255, 255, 0.35);
  transition: transform .3s ease, box-shadow .3s ease,
              background-color .3s ease, border-color .3s ease;
}

/* Блик сверху */
.gc-account-leftbar .gc-account-user-menu li a::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(255,255,255,.28) 0%, rgba(255,255,255,0) 55%);
  pointer-events: none;
}

/* Наведение: лёгкий подъём и бирюзовое свечение */
.gc-account-leftbar .gc-account-user-menu li:not(.active):not(.selected) a:hover {
  transform: translateY(-2px);
  background: rgba(255, 255, 255, 0.24) !important;
  border-color: rgba(255, 255, 255, 0.6);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.28),
              0 0 16px rgba(var(--shp-teal), 0.55),
              inset 0 1px 0 rgba(255, 255, 255, 0.5);
}

/* Профиль (аватар) и Поиск: родные картинки, без маски */
.gc-account-leftbar .gc-account-user-menu li.menu-item.menu-item-profile a::after,
.gc-account-leftbar .gc-account-user-menu li.menu-item.menu-item-search a::after { display: none !important; }
.menu-item-profile a { padding: 0 !important; }
.menu-item-profile img.menu-item-icon {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
}
.menu-item-search img.menu-item-icon {
  width: 24px;
  height: 24px;
  filter: brightness(0) invert(1);
}
.menu-item-search.active img.menu-item-icon { filter: brightness(0) saturate(100%) invert(10%) sepia(60%) saturate(1800%) hue-rotate(190deg); }

/* Старые иконки прячем */
.menu-item-cms img.menu-item-icon,
.menu-item-user img.menu-item-icon,
.menu-item-tasks img.menu-item-icon,
.menu-item-teach img.menu-item-icon,
.menu-item-notifications img.menu-item-icon,
.menu-item-sales img.menu-item-icon,
.menu-item-chatium img.menu-item-icon,
.menu-item-notifications_button_small img.menu-item-icon {
  display: none !important;
}

/* Новые иконки: маска + цвет палитры (ровно по центру).
   !important — чтобы системные стрелки/маркеры GetCourse у активного пункта не ломали иконку */
.gc-account-leftbar .gc-account-user-menu li.menu-item a::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  bottom: auto !important;
  width: 24px !important;
  height: 24px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  opacity: 1 !important;
  z-index: 2;
  transform: translate(-50%, -50%);
  background: none !important;
  background-color: #fff !important;
  -webkit-mask: var(--shp-icon) center / contain no-repeat;
  mask: var(--shp-icon) center / contain no-repeat;
  transition: background-color .3s ease, transform .3s ease;
}
.gc-account-leftbar .gc-account-user-menu li.menu-item a:hover::after {
  transform: translate(-50%, -50%) scale(1.1);
}

/* Иконки пунктов (те же картинки) */
.menu-item-cms a { --shp-icon: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAVCAYAAACpF6WWAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAHnSURBVHgB1VVLctpAEO2egXU4gm4QzT4V0AkCuxSwICdwfALsEwSfAKUqUNnhnEA2HEDiBsoNSFWyIlL7jUYU2MbC+LPwq6JK6t90P00/mA7gcxy1NKshHj38UmIdTt5/+F6Vo6qcveX8m2Yd4dEn4iuxhSUPrb0qj/cZB3Hkrbk2IxJfRC6mpvl14+vH12fCjM4lqUveCU2QHizqxtVjJDVE+HRqPoZ3Y7pxNGDWttuVSNaZmiDZ9d8av79cnNhxhYQyyc2+ghYoEmaSGRuH4nF3uRje6xTjNtbu5AEMl38l+3JpghUdgM37j6nAdRuVRvU8Owcdq5p1gr+o5O98Yppn9EiE7uBOwTPxcM2qhXfD3XgOfmhMIqcoOKInouR5nKMO95Jre2UaE79p6JnoJYtYJP+9+VAH+Xsc8hWmfqfoFfB2itaqnG5dtV1Jb2vltC7FfUwfyqvsdF2IibR3bdiilrXbi0/HdtqHBlhVwroGP01wtbXP28I0++ekMDm60/3IiuuncbcfilBYLwSxRy8C9kToj1KSXeDNu6s0x6Lv8j1WNCtUCoIwgvCekP27IEnLOIzHPiTuFqfYcd/KHXyJ3aDS7LkunaDzTvBAsf6Er7vlSujXPpFx6k/NzTtbCjHxj/LwGy3y4P6oZ/T1AAAAAElFTkSuQmCC"); }
.menu-item-teach a { --shp-icon: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAATCAYAAAB/TkaLAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAE/SURBVHgB7ZTNbYQwEIUxIK6hg6UEUkGgArYAUEIHKWE7SFIBioBz0gFsBWErCCU4V37z3mpWslbJMVIOjGSNZ+Z5PPbhU5ZYWZYR3N627d26rj5z8Cel1Mc4jsc8z/uiKALP85JlWULkA2rgNeITtm2WZe05R6Hruo0h6tGsl6Y87Eu+Y2xoNLZcrIei76dpunUdxzlIIkaiw0TaMqyu63Ce50e84B6aF2ieObWpwWA++uxx2RMGPKiqqhoW0jSNrV+MX4MDDS++PPEnwwCf+IrWtv7AtqZb063pv2/qEmGARQQYPCBOsEJAwQeVNFFGpmJ10FAfAS5k7h32vuh6+A7+yBj5L0W0IXgjT4WR7yxg3QhjI3MKGaIT5lK34yBynjyNz9eTh7z5mpNSC8BKoi/BNO0wDK/XzL3o4DRr35UrvF1Su4sNAAAAAElFTkSuQmCC"); }
.menu-item-user a { --shp-icon: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAARCAYAAADZsVyDAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAJMSURBVHgBjZTNceJAEIUlEFxNCDgCcATGERjO/KwVAWwEliNYMhC/510iQI4AOQM5A52Bgv0eNaMay6y9UzU1rZ7u192vW+N7/7GWy2WHo8u+qVQq6X6/34RhmH3lU7mmjOO4aeX1ev3s+/6W3eKzcTqdJkEQbNG3y7bu8q9kFgPSPJ/PD+wmGcaAhaPRaGaAGrVa7bfujsdjD3mHnOETDQaD+aeMFVmZISYA9YbDYcL3I98bC6oFBfnhcOgpOJk3lIBs2DOT2GUFhRAEE0UGMCzK8X05vpbLFPhqtfKUtQma8N3CfiL5Q8YYNbjIXAAyf0d3Xwa2vLr2+L9x3HyiQt3maLvNwHHG0VEDXVA1z1SXOIEepSt83UwoZydwlQPoz36/n8JbhPyMU07wjLMtABonbr16vf6LyjqIuXR2DD+MG1290wTIkVnNpSOriGbdAhpxt+FUY28NQI5OASNA79zZLjJWRzFoAThXc7wrnEKBRuwCWLaBrjFB3iw9vuVM46NmAKwSc0r8QeZdla7p8EoLXQqQ+jInWMo8a1QvNKmqisZMhioXTi8lotvhFBkjnQ+61wZQdPVEi0lmC+iTaDT36kMUmDFLLD+LxaIrBxl98R4o0z+GwinHmD2VPd+vGtFAEdhjFO+UNKtWq/opvO8eGbs0ptiPDaVPqERhEgA2BUxvwj0XidswgeuEbz0+DQcspxeZGghIy8xvrkyRUzBf/HIGemTEsej4LlvNtvntXzSW7p3/LydxLVoQUzvTdtkKyLzJWfyB7voLjj6cXIBpUrcAAAAASUVORK5CYII="); }
.menu-item-tasks a { --shp-icon: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAWCAYAAADNX8xBAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAElSURBVHgB7VTbbcJAELw7n/yLS0gJpAKUCnLflmXFJaSSlGDFbgAqSKgAqACoAPNrWTYz6O6Dh/AZxB8jnW69a8/OrqWRwiLP8ygMQ9O27UT0Yy+lXCRJ8usS0pK8aa3/EEY4Uw8ivjdm0DTNR5ZlmyNRWZZrXEskkcsqDyLX/IeE+O5dFUXxZZm/fUkIqmBjqguCwCjMOsZZsSAGgo27rpvh+4lGwHl3rgiFBoXPWwRQMIvj+GSXStwBjHSR0+eJNE3ZyefPiYcVPZXoYrTXsp9H5LXsa8u9S9G15fYqGrpsqB/h2irI/seDoUOKgaAn4aJ7LFRd11M4QAWbzW3BlySyxiZouedWK5RSS/i2j8EZnOrEah3oljQ6hKM+FjSccxrnqgfG24dkBOBEygAAAABJRU5ErkJggg=="); }
.menu-item-notifications a { --shp-icon: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAARCAYAAAAyhueAAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAGHSURBVHgBtVTLbcJAFHx+WJzpIJQAFSRUkHBFguAKSCqADhAVkIjPNaQCnArsdOAScvY3M5E3sgImNoiRVrveXc+b91tLCthsNh1Mt2madqQiLMtyoyj6cBwnMHtqFuv1ep5lmYcxlupo4f7Mtu09/n/6NZQrnEIdN/vD4dCVmlitVjMonqpqfzAY7HS5XLZprdFoOOcQEvhvBo5FkiRzfiukjzH7tCAXII5jqm1D9Z3CApX65hCx2TMc/5HAwxbvmlgiUV8gDcinfy8jtguMMYg9huYYIdXAQw/LFjJ/4OEB6Wg02sGVHiwKs7rdbh+K5zA2gaI9lu8g7BVLycCWI8gvdplVqH4DEeP1ifWENQyDDoy/SAlUToBZBUmf4SA59+BF9xRhqdIiGA5MtSpD5QpAE6iPeFXu9TLkTdRmWSky6GKvwzKRC9BsNh9BGrArFZn22WKwwCzfyxlgs7DVMZ75bZkD8yhg+Mi0X4Pzp45JaKrCKp4yLvlbcCMVwZyEYfjKNjV73/5L53rDK3Y7AAAAAElFTkSuQmCC"); }
.menu-item-sales a { --shp-icon: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAATCAYAAACQjC21AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAHKSURBVHgBnZTNccIwEIVlY7jGHYRUEFMBpANy5mdCBaGEUAFQgfk9QwfQQUwFMRXEOcNAvkdsBpzMxGZnNCuttE9vV7uyzD/i+77rOI5n2/bj4XCQrmGOmAf7/b7X6XTCy/NWGmA+n3uoauzsHY9HL94KmAfYAi3Y70oDWgE0SvydZDKZTOqWZfVxKqNDTGvGiPUGp+DSKWY+LhaLK9i/sexeMYTVK44Dc5tEu92ukoRucVOZW95h5YoVekw4YRYkRUMKRMZFPzcajcApFAo1gWEctlqtrskvo+l0OoDEAnIVG0MNsJA8vZkbJfZ1IVc/PQoMN+mkZxGl62KpdHknQBh+ZsRI6tLHuZ7eA2fkmJxCWKoG1ecToYaJnUv60rbJKQBWAeup4AF5UblosP46AZucogck3DLsRqVSyU3v5wakPIbU3AIw9XZEySRbVcb6FyAH/L+AYLVuNpvjdru9VL0pXMx36XMOByPG44Vty7hPHyTUbTInZ/ogrppgNputdMaCkTplxaiodcwNonrko/igpx9s2m2ttotbp2xyir47whe7oV77/B+qH2H5ylQXhFnA9Nrmp3XP/4CVph4n+95kE9XeUlEmhm/2nPjYhNaswwAAAABJRU5ErkJggg=="); }
.menu-item-chatium a { --shp-icon: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAYCAYAAAAlBadpAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAD9SURBVHgB7VTBDYJAENw7jreWQAdaAlagfgkk0oFWICXQARrgTwdSAh1IB+qbBJwV+BAgGJ8yyXHL7M3t3mNHUIMwDE1sO6wFDeOlaVpqWVbCP4I/cRyfq6ryEKbYn0KIXVcFLkFuidDE8m3bPokgCAxd1+8gTiB8PshcV+y6bt4UWpdlecNlR4F2fQQrCDc0Ea1GcitYOX0BKWUGjSHpB8ziWfyXYozeI4qiZCivaBz7oiiyLtk4CikMNdvOqk/pOE7ax8NJ1pjpnNvmtky0d6QJYBtCsS3Cy8cA8TYPxJlqA8yHhDhjUG2AV9jWQbQJNj2lFFcftV7utH3OG10/Yf6FSMVHAAAAAElFTkSuQmCC"); }
.menu-item-notifications_button_small a { --shp-icon: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAWCAYAAADNX8xBAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAGzSURBVHgBrZTbVcJAEIY34fJqSkgHxgrECsBnLpoK0AqADrCCcLg8SwdABYYKhArEV+CA30SCK2YxOfqfs2dvs/9cdmYsZcBgMCjZtn252+08tu+WZb1sNpuZ7/uLJHnr9CAIArdQKAQsS4zpfr+Xhw7Dg8xltKvVaucskZDk8/kJwgu0+6fa+/3+PXctUVCv130jEe68MoUI3SoDNGVPtVqtG5/bujaZt9vtozoDsRJ3RaYFqfODCA1lMdkUTB2NRmMMmSoWi9dJRC6XM5USyIf86FUSkaP+AFv9E45EmOnkcrm3tA+RX6rP/PoikiwW19br9TwtEVkf8ubuGxEICHQvzY/FIGF7vFlhRDsi0vKnozIApSvJJ6xqSj7ZLKSG5lmsiSH5xOSQT27kGsypg6wjzmz5KCEaY1FFakhlBJY0pTtQm9OoaCVg4iuHY/kNNES/R9wW+kOK1eXeZXmBbIXhsb+hrYTH6j+0iLKkgQiYMl1aDIpClksUdePYWur3GMSEK/kplRWj0eiZ4Wn75nA4fDDJ500XEifcmEAg7dY59G5jwzvrGnGrQFaStR6PJHwA02XeFlaXfMkAAAAASUVORK5CYII="); }

/* Активный / открытый пункт: светлое стекло, иконка NAVY, акцентная оранжевая полоска.
   Список состояний шире (active, selected, current, open), т.к. GetCourse
   помечает открытый пункт по-разному */
.gc-account-leftbar .gc-account-user-menu li.active a,
.gc-account-leftbar .gc-account-user-menu li.selected a,
.gc-account-leftbar .gc-account-user-menu li[class*="current"] a,
.gc-account-leftbar .gc-account-user-menu li[class*="open"] a,
.gc-account-leftbar .gc-account-user-menu li a[class*="active"],
.gc-account-leftbar .gc-account-user-menu li a[class*="open"] {
  background: rgba(255, 255, 255, 0.92) !important;
  border-color: #fff !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.30),
              0 0 14px rgba(255, 255, 255, 0.35) !important;
}
.gc-account-leftbar .gc-account-user-menu li.active a::before,
.gc-account-leftbar .gc-account-user-menu li.selected a::before,
.gc-account-leftbar .gc-account-user-menu li[class*="current"] a::before,
.gc-account-leftbar .gc-account-user-menu li[class*="open"] a::before,
.gc-account-leftbar .gc-account-user-menu li a[class*="active"]::before,
.gc-account-leftbar .gc-account-user-menu li a[class*="open"]::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: auto 14px 6px 14px !important;
  width: auto !important;
  height: 3px !important;
  border: 0 !important;
  border-radius: 3px;
  background: rgb(var(--shp-accent)) !important;
  z-index: 2;
}
.gc-account-leftbar .gc-account-user-menu li.menu-item.active a::after,
.gc-account-leftbar .gc-account-user-menu li.menu-item.selected a::after,
.gc-account-leftbar .gc-account-user-menu li.menu-item[class*="current"] a::after,
.gc-account-leftbar .gc-account-user-menu li.menu-item[class*="open"] a::after,
.gc-account-leftbar .gc-account-user-menu li.menu-item a[class*="active"]::after,
.gc-account-leftbar .gc-account-user-menu li.menu-item a[class*="open"]::after {
  background-color: rgb(var(--shp-navy)) !important;
}

/* Кнопка уведомлений: та же высота, что у остальных */
.gc-account-leftbar .gc-account-user-menu li.menu-item-notifications_button_small a {
  height: 63px;
}

/* Счётчик уведомлений */
.gc-account-leftbar .gc-account-user-menu .notify-count {
  position: absolute;
  top: 5px;
  right: 5px;
  left: auto;
  transform: none;
  z-index: 10;
  box-sizing: border-box;
  min-width: 20px;
  height: 20px;
  padding: 0 5px;
  background: rgb(var(--shp-accent));
  color: rgb(var(--shp-navy));
  font-family: Gilroy, Montserrat, Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  line-height: 20px;
  text-align: center;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(var(--shp-accent), 0.55);
}

/* Выпадающее подменю */
.gc-account-user-submenu-bar {
  width: 220px;
  margin-left: 0;
  background: rgba(255, 255, 255, 0.72) !important;
  -webkit-backdrop-filter: blur(18px) saturate(160%);
  backdrop-filter: blur(18px) saturate(160%);
  border: 1px solid rgba(255, 255, 255, 0.8);
  border-radius: 0 18px 18px 0;
  box-shadow: 12px 8px 32px rgba(var(--shp-navy), 0.14);
  font-family: Gilroy, Montserrat, Arial, sans-serif;
}
.gc-account-user-submenu-bar h3 {
  color: rgb(var(--shp-navy));
  font-size: 20px;
  font-weight: 700;
}
.gc-account-user-submenu-bar .gc-account-user-submenu li a {
  display: block;
  color: rgb(var(--shp-gray));
  font-weight: 500;
  border-radius: 10px;
  transition: color .25s ease, background-color .25s ease, padding-left .25s ease;
}
.gc-account-user-submenu-bar .gc-account-user-submenu li a:hover {
  color: rgb(var(--shp-navy));
  font-weight: 600;
  background: rgba(var(--shp-teal), 0.14);
  padding-left: 14px;
}

/* Кнопка чата */
.talks-widget-button {
  background: rgba(var(--shp-teal), 0.85) !important;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.6);
  box-shadow: 0 8px 22px rgba(var(--shp-navy), 0.22);
  transition: transform .3s ease, box-shadow .3s ease, background-color .3s ease;
}
.talks-widget-button:hover {
  background: rgb(var(--shp-navy)) !important;
  transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(var(--shp-navy), 0.32),
              0 0 0 4px rgba(var(--shp-teal), 0.2);
}

/* Fallback: браузер без backdrop-filter — плотный фон вместо стекла */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .gc-account-leftbar .gc-account-user-menu li a { background: #FFFFFF !important; }
  .gc-account-user-submenu-bar { background: #FFFFFF !important; }
  .talks-widget-button { background: rgb(var(--shp-teal)) !important; }
}

/* Уважаем «уменьшить анимацию» */
@media (prefers-reduced-motion: reduce) {
  .gc-account-leftbar *, .talks-widget-button { transition: none !important; }
}

/* ################ 2. СТРАНИЦЫ, ТРЕНИНГИ, УРОКИ ################ */
/* ===== ШХП · тренинги, кнопка куратора, календарь · стекло ===== */
/* Фон страницы: мягкий градиент, чтобы стекло читалось */
body {
  background: linear-gradient(160deg, #F4F8FB 0%, #E8F1F6 50%, #F6F9FB 100%) fixed;
}

.page-header h1 {
  margin: 10px 0 14px;
  font-family: Gilroy, Montserrat, Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.2;
  color: rgb(var(--shp-navy));
}
.stream-table td > a > div { display: none; }

/* ---------- Кнопка «Написать куратору» ---------- */
.kurator {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 220px;
  min-height: 50px;
  margin: 20px auto;
  padding: 14px 16px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  color: #fff;
  background: linear-gradient(135deg, rgba(var(--shp-navy), .92) 0%, rgba(var(--shp-teal), .92) 100%);
  border: 1px solid rgba(255, 255, 255, .45);
  border-radius: 20px;
  box-shadow: 0 8px 20px rgba(var(--shp-navy), .22), inset 0 1px 0 rgba(255, 255, 255, .35);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  transition: transform .3s ease, box-shadow .3s ease;
  -webkit-tap-highlight-color: transparent;
}
.kurator:hover {
  color: #fff;
  transform: translateY(-4px);
  box-shadow: 0 14px 28px rgba(var(--shp-navy), .28), 0 0 0 4px rgba(var(--shp-teal), .2),
              inset 0 1px 0 rgba(255, 255, 255, .45);
}

/* ---------- Блок «Кураторы на связи» ---------- */
.supportTime {
  box-sizing: border-box;
  max-width: 320px;
  margin: 10px auto 0;
  padding: 18px 20px;
  font-family: Gilroy, Montserrat, Arial, sans-serif;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.7;
  text-align: center;
  color: rgb(var(--shp-gray));
  background: linear-gradient(145deg, rgba(255,255,255,.85) 0%, rgba(232,244,250,.7) 100%);
  border: 1px solid rgba(255, 255, 255, .85);
  border-top: 4px solid rgb(var(--shp-accent));
  border-radius: 20px;
  box-shadow: 0 10px 30px rgba(var(--shp-navy), .10), inset 0 1px 0 #fff;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
.supportTime p { margin: 0 0 4px; }
/* первая строка («Кураторы на связи:») — заголовок */
.supportTime p:first-child,
.supportTime .html-content > :first-child {
  margin-bottom: 8px;
  padding-bottom: 8px;
  font-size: 17px;
  font-weight: 700;
  color: rgb(var(--shp-navy));
  border-bottom: 1px solid rgba(var(--shp-teal), .3);
}
.supportTime strong, .supportTime b { color: rgb(var(--shp-navy)); }
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .supportTime { background: #FFFFFF; }
}

/* ---------- Сетка тренингов ---------- */
.stream-table {
  width: 100%;
  margin: 10px auto;
}
.stream-table tbody {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 20px;
}

/* Плашка тренинга — стекло */
.stream-table tbody tr {
  position: relative;
  display: flex;
  flex-direction: column;
  width: calc(50% - 10px);
  min-width: 280px;
  max-width: 500px;
  overflow: hidden;
  background: linear-gradient(145deg, rgba(255,255,255,.85) 0%, rgba(232,244,250,.7) 100%) !important;
  border: 1px solid rgba(255, 255, 255, .85);
  border-radius: 24px;
  box-shadow: 0 10px 30px rgba(var(--shp-navy), .10), inset 0 1px 0 #fff;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.stream-table tbody tr:hover {
  transform: translateY(-4px);
  border-color: rgba(var(--shp-teal), .6);
  box-shadow: 0 16px 36px rgba(var(--shp-navy), .16), 0 0 0 3px rgba(var(--shp-teal), .14),
              inset 0 1px 0 #fff;
}

/* Ячейка */
.stream-table tr td {
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  min-height: 220px;
  padding: 20px 40px 20px 20px;
  background: transparent !important;
  border: 0 !important;
}
.stream-table tr td:hover {
  background: transparent !important;
  box-shadow: none;
  transform: none;
}

/* Ссылка */
.stream-table tr td a {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: rgb(var(--shp-gray));
}

/* Заголовок тренинга (без рамки в рамке) */
.stream-table tr td a .stream-title,
.stream-table .stream-title {
  display: block !important;
  box-sizing: border-box;
  width: 100% !important;
  margin: 0 0 5px;
  padding: 12px 4px;
  color: rgb(var(--shp-navy)) !important;
  font-size: 23px !important;
  font-weight: 600;
  line-height: 1.2;
  text-align: left;
  background: transparent;
  border: 0;
  border-bottom: 2px solid rgba(var(--shp-teal), .45);
  border-radius: 0;
}

/* Стрелка */
.stream-table tr td::after {
  content: '➔';
  position: absolute;
  right: 20px;
  bottom: 20px;
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  color: #fff;
  background: rgb(var(--shp-teal));
  border-radius: 50%;
  box-shadow: 0 4px 12px rgba(var(--shp-teal), .45);
  transition: transform .4s ease, background-color .3s ease;
}
.stream-table tr:hover td::after {
  background: rgb(var(--shp-navy));
  transform: rotate(45deg);
}

/* Жёсткие правила сетки: перебивают встроенный style виджета
   (margin-left:-20px, height:70px, padding у td) и дают 2 колонки */
.xdget-trainingList .stream-table {
  display: block !important;
  width: 100% !important;
  margin: 10px 0 40px !important;
}
.xdget-trainingList .stream-table tbody {
  display: flex !important;
  flex-wrap: wrap;
  gap: 20px;
  width: 100%;
}
.xdget-trainingList .stream-table tbody tr {
  display: flex;
  flex: 0 1 calc(50% - 10px);
  width: calc(50% - 10px);
  min-width: 260px;
  max-width: none;
  box-sizing: border-box;
}
.xdget-trainingList .stream-table tbody tr td {
  box-sizing: border-box;
  width: 100% !important;
  height: auto !important;
  min-height: 200px !important;
  padding: 20px 60px 20px 20px !important;
  background: transparent !important;
}
.xdget-trainingList .stream-table tbody tr td:hover { background: transparent !important; }

@media (max-width: 768px) {
  .xdget-trainingList .stream-table tbody tr { flex-basis: 100%; width: 100%; }
}

/* ---------- Системные кнопки («Список тренингов», «Настроить вид») ---------- */
.page-actions .btn,
.page-actions .inline-global-controls .btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 18px;
  font-family: Gilroy, Montserrat, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .02em;
  text-transform: uppercase;
  text-shadow: none;
  color: rgb(var(--shp-navy));
  background: rgba(255, 255, 255, .6) !important;
  background-image: none !important;
  border: 1px solid rgba(var(--shp-teal), .45);
  border-radius: 14px;
  box-shadow: 0 6px 16px rgba(var(--shp-navy), .10), inset 0 1px 0 rgba(255, 255, 255, .9);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  transition: transform .3s ease, box-shadow .3s ease, background-color .3s ease, color .3s ease, border-color .3s ease;
}
.page-actions .btn .fa { color: rgb(var(--shp-teal)); transition: color .3s ease; }
.page-actions .btn:hover,
.page-actions .btn:focus {
  color: #fff;
  background: linear-gradient(135deg, rgba(var(--shp-navy), .92) 0%, rgba(var(--shp-teal), .92) 100%) !important;
  border-color: rgba(255, 255, 255, .6);
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(var(--shp-navy), .22), 0 0 0 3px rgba(var(--shp-teal), .18);
  outline: none;
}
.page-actions .btn:hover .fa,
.page-actions .btn:focus .fa { color: rgb(var(--shp-accent)); }
.page-actions .btn:active { transform: translateY(0); }
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .page-actions .btn { background: #FFFFFF !important; }
}

/* ---------- Кнопки на страницах разделов («Балансы», «Добавить» и выпадающие меню) ---------- */
.standard-page-actions .btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 18px;
  font-family: Gilroy, Montserrat, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .02em;
  text-transform: uppercase;
  text-shadow: none;
  color: rgb(var(--shp-navy));
  background: rgba(255, 255, 255, .6) !important;
  background-image: none !important;
  border: 1px solid rgba(var(--shp-teal), .45);
  border-radius: 14px;
  box-shadow: 0 6px 16px rgba(var(--shp-navy), .10), inset 0 1px 0 rgba(255, 255, 255, .9);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  transition: transform .3s ease, box-shadow .3s ease, color .3s ease, border-color .3s ease;
}
/* Склеенные кнопки «Балансы ▾» */
.standard-page-actions .btn-group > .btn:not(:first-child):not(:last-child) { border-radius: 0; }
.standard-page-actions .btn-group > .btn:first-child:not(:last-child) { border-radius: 14px 0 0 14px; }
.standard-page-actions .btn-group > .btn:last-child:not(:first-child) { border-radius: 0 14px 14px 0; }

/* Главная кнопка «Добавить» — залитая */
.standard-page-actions .btn-success {
  color: #fff;
  background: linear-gradient(135deg, rgba(var(--shp-navy), .92) 0%, rgba(var(--shp-teal), .92) 100%) !important;
  border-color: rgba(255, 255, 255, .5);
  box-shadow: 0 8px 20px rgba(var(--shp-navy), .22), inset 0 1px 0 rgba(255, 255, 255, .35);
}
.standard-page-actions .btn:hover,
.standard-page-actions .btn:focus,
.standard-page-actions .open > .btn {
  color: #fff;
  background: linear-gradient(135deg, rgba(var(--shp-navy), .92) 0%, rgba(var(--shp-teal), .92) 100%) !important;
  border-color: rgba(255, 255, 255, .6);
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(var(--shp-navy), .22), 0 0 0 3px rgba(var(--shp-teal), .18);
  outline: none;
}
.standard-page-actions .btn:active { transform: translateY(0); }

/* Пары кнопок («Балансы ▾», «Добавить ▾»): ровная общая высота, без разъезда при hover */
.standard-page-actions .btn-group {
  display: inline-flex;
  align-items: stretch;
  vertical-align: middle;
  border-radius: 14px;
  transition: transform .3s ease;
}
.standard-page-actions .btn-group:hover { transform: translateY(-2px); }
.standard-page-actions .btn-group > .btn {
  float: none;
  height: 40px;
  box-sizing: border-box;
  margin: 0;
  justify-content: center;
}
.standard-page-actions .btn-group > .btn + .btn { margin-left: -1px; }
.standard-page-actions .btn-group > .btn:hover,
.standard-page-actions .btn-group > .btn:focus,
.standard-page-actions .btn-group.open > .btn { transform: none; }
/* Узкая кнопка со стрелкой */
.standard-page-actions .btn.dropdown-toggle:not(.btn-success) {
  min-width: 36px;
  padding: 0 12px;
  border-left: 1px solid rgba(var(--shp-teal), .3);
}
.standard-page-actions .btn .caret { margin: 0; border-top-color: currentColor; border-bottom-color: currentColor; }
.standard-page-actions .btn-success .caret { margin-left: 2px; }

/* Выпадающие меню */
.standard-page-actions .dropdown-menu,
.page-actions .dropdown-menu {
  margin-top: 8px;
  padding: 8px;
  font-family: Gilroy, Montserrat, Arial, sans-serif;
  background: rgba(255, 255, 255, .85);
  border: 1px solid rgba(255, 255, 255, .9);
  border-radius: 16px;
  box-shadow: 0 14px 32px rgba(var(--shp-navy), .18);
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
}
.standard-page-actions .dropdown-menu > li > a,
.page-actions .dropdown-menu > li > a {
  padding: 8px 14px;
  font-weight: 600;
  color: rgb(var(--shp-gray));
  border-radius: 10px;
  transition: background-color .2s ease, color .2s ease;
}
.standard-page-actions .dropdown-menu > li > a:hover,
.standard-page-actions .dropdown-menu > li > a:focus,
.page-actions .dropdown-menu > li > a:hover,
.page-actions .dropdown-menu > li > a:focus {
  color: rgb(var(--shp-navy));
  background: rgba(var(--shp-teal), .15);
}
.standard-page-actions .dropdown-menu .glyphicon,
.standard-page-actions .dropdown-menu .text-primary { color: rgb(var(--shp-teal)) !important; }

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .standard-page-actions .btn:not(.btn-success) { background: #FFFFFF !important; }
  .standard-page-actions .dropdown-menu, .page-actions .dropdown-menu { background: #FFFFFF; }
}

/* ---------- Дерево страниц сайта (папки) ---------- */
.new-page-tree {
  padding: 10px;
  font-family: Gilroy, Montserrat, Arial, sans-serif;
  background: linear-gradient(145deg, rgba(255,255,255,.85) 0%, rgba(232,244,250,.7) 100%);
  border: 1px solid rgba(255, 255, 255, .85);
  border-radius: 20px;
  box-shadow: 0 8px 24px rgba(var(--shp-navy), .10), inset 0 1px 0 #fff;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
.new-page-tree .dd-item { position: relative; }
.new-page-tree .dd-item .node-content,
.new-page-tree .dd-item .node-content:visited {
  display: block;
  margin: 2px 0;
  padding: 9px 40px 9px 16px;
  font-size: 15px;
  font-weight: 600;
  color: rgb(var(--shp-gray));
  text-decoration: none;
  background: transparent;
  border: 1px solid transparent;
  border-bottom: 1px solid transparent;
  border-radius: 12px;
  transition: background-color .25s ease, border-color .25s ease, color .25s ease, transform .25s ease;
}
.new-page-tree .dd-item .node-content:hover {
  color: rgb(var(--shp-navy));
  background: rgba(var(--shp-teal), .14);
  border-color: rgba(var(--shp-teal), .35);
  transform: translateX(3px);
}
/* Активная папка */
.new-page-tree .dd-item.active > .node-content {
  color: rgb(var(--shp-navy));
  background: rgba(var(--shp-teal), .2);
  border-color: rgba(var(--shp-teal), .5);
  box-shadow: inset 4px 0 0 rgb(var(--shp-accent));
}
/* «Все страницы», «Страницы без папки», «Системные страницы» */
.special-node { font-style: normal; color: rgb(var(--shp-navy)); }
.new-page-tree .special-node .node-content { font-weight: 700; color: rgb(var(--shp-navy)); }
.select-folder-link { color: rgb(var(--shp-gray)); }
/* Ручка перетаскивания */
.new-page-tree .dd-handle { color: rgb(var(--shp-teal)); }
.new-page-tree .dd-item .dd-handle:hover { color: rgb(var(--shp-navy)); }
/* Шаблоны (были красными) */
.new-page-tree .dd-item.is-template > .node-content,
.new-page-tree .dd-item.is-template > .node-content a.title { color: rgb(var(--shp-teal)); }
.new-page-tree .is-template > .dd-icon .fa { color: rgb(var(--shp-teal)); }

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .new-page-tree { background: #FFFFFF; }
}

/* ---------- Расписание («Актуальные события») ---------- */
.xdget-lessonSchedule {
  box-sizing: border-box;
  padding: 20px 8px 12px;
  background: linear-gradient(145deg, rgba(255,255,255,.85) 0%, rgba(232,244,250,.7) 100%);
  border: 1px solid rgba(255, 255, 255, .85);
  border-radius: 24px;
  box-shadow: 0 10px 30px rgba(var(--shp-navy), .10), inset 0 1px 0 #fff;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
.xdget-lessonSchedule h3 {
  margin: 0 0 10px;
  padding: 0 16px;
  font-size: 26px;
  font-weight: 700;
  color: rgb(var(--shp-navy));
}
.xdget-lessonSchedule .schedule-block {
  padding: 0 8px 0 0;
  background: transparent !important;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(var(--shp-teal), .7) transparent;
}
.xdget-lessonSchedule .schedule-block::-webkit-scrollbar { width: 6px; }
.xdget-lessonSchedule .schedule-block::-webkit-scrollbar-track { background: transparent; }
.xdget-lessonSchedule .schedule-block::-webkit-scrollbar-thumb { background: rgba(var(--shp-teal), .65); border-radius: 6px; }

.xdget-lessonSchedule .schedule-block .day { margin-bottom: 18px; }
.xdget-lessonSchedule .schedule-block .day-label {
  display: block;
  margin: 0 8px 6px 16px;
  padding-bottom: 6px;
  font-size: 15px;
  font-weight: 700;
  color: rgb(var(--shp-navy));
  border-bottom: 2px solid rgba(var(--shp-teal), .3);
}
.xdget-lessonSchedule .schedule-block .day.today .day-label {
  border-bottom-color: rgb(var(--shp-accent));
}

.xdget-lessonSchedule .schedule-block .day .record {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 4px 8px 4px 8px;
  padding: 10px 12px;
  overflow: visible;
  border-radius: 14px;
  border: 1px solid transparent;
  transition: background-color .25s ease, border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}
.xdget-lessonSchedule .schedule-block .day .record:hover {
  background: rgba(255, 255, 255, .7);
  border-color: rgba(var(--shp-teal), .4);
  box-shadow: 0 6px 16px rgba(var(--shp-navy), .08);
  transform: translateX(3px);
}

/* Время — таблетка */
.xdget-lessonSchedule .schedule-block .time {
  float: none;
  flex-shrink: 0;
  width: auto;
  min-width: 56px;
  box-sizing: border-box;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  color: #fff;
  background: rgb(var(--shp-teal));
  border-radius: 999px;
  box-shadow: 0 3px 8px rgba(var(--shp-teal), .4);
  transition: background-color .25s ease, color .25s ease;
}
.xdget-lessonSchedule .schedule-block .record:hover .time { background: rgb(var(--shp-navy)); }
.xdget-lessonSchedule .schedule-block .day.today .time {
  color: rgb(var(--shp-navy));
  background: rgb(var(--shp-accent));
  box-shadow: 0 3px 8px rgba(var(--shp-accent), .5);
}
.xdget-lessonSchedule .schedule-block .day.today .record:hover .time { background: rgb(var(--shp-navy)); color: #fff; }

/* Описание занятия */
.xdget-lessonSchedule .schedule-block .event { margin-left: 0; padding-bottom: 0; }
.xdget-lessonSchedule .schedule-block .event br { display: none; }
.xdget-lessonSchedule .schedule-block .event a,
.xdget-lessonSchedule .schedule-block .day.today .event a {
  font-weight: 600;
  line-height: 1.35;
  text-decoration: none;
  color: rgb(var(--shp-gray));
  transition: color .25s ease;
}
.xdget-lessonSchedule .schedule-block .event a:hover,
.xdget-lessonSchedule .schedule-block .day.today .event a:hover { color: rgb(var(--shp-navy)); }

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .xdget-lessonSchedule { background: #FFFFFF; }
}
@media (prefers-reduced-motion: reduce) {
  .xdget-lessonSchedule .schedule-block .record, .xdget-lessonSchedule .schedule-block .time, .xdget-lessonSchedule .schedule-block .event a { transition: none !important; }
}

/* ---------- Описание, заголовки, прогресс доступа ---------- */
.opisanie { font-size: 18px; margin-top: 15px; color: rgb(var(--shp-gray)); }
.zagolovok {
  font-size: 22px !important;
  font-weight: 700 !important;
  color: rgb(var(--shp-navy));
}

/* Доступ к урокам (прогресс-бар) */
.progress-block {
  padding: 18px 20px;
  font-family: Gilroy, Montserrat, Arial, sans-serif;
  background: linear-gradient(145deg, rgba(255,255,255,.85) 0%, rgba(232,244,250,.7) 100%);
  border: 1px solid rgba(255, 255, 255, .85);
  border-radius: 20px;
  box-shadow: 0 10px 30px rgba(var(--shp-navy), .10), inset 0 1px 0 #fff;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
.progress-block .header {
  margin-bottom: 4px;
  font-family: Gilroy, Montserrat, Arial, sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  color: rgb(var(--shp-navy));
}
.progress-block .title {
  margin-bottom: 12px;
  font-family: Gilroy, Montserrat, Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.3;
  color: rgb(var(--shp-gray));
}
.progress-block .progress-wrapper {
  position: relative;
  width: 100%;
  height: 14px;
  background: rgba(var(--shp-teal), .18);
  border-radius: 999px;
  overflow: hidden;
  box-shadow: inset 0 1px 3px rgba(var(--shp-navy), .15);
}
.progress-block .scale {
  position: absolute;
  height: 100%;
  max-width: 100%;
  background: linear-gradient(90deg, rgb(var(--shp-teal)) 0%, rgb(var(--shp-navy)) 100%);
  border-radius: 999px;
  transition: width .6s ease;
}
.xdget-productTiming { display: none; }

/* Текущий урок */
.current_lesson {
  display: block;
  padding: 8px 14px;
  font-size: 13px;
  font-weight: 700;
  text-align: center;
  color: #fff;
  background: linear-gradient(135deg, rgba(var(--shp-navy), .92) 0%, rgba(var(--shp-teal), .92) 100%);
  border: 1px solid rgba(255, 255, 255, .4);
  border-radius: 20px;
  box-shadow: 0 6px 16px rgba(var(--shp-navy), .2);
  transition: transform .3s ease, box-shadow .3s ease;
}
.current_lesson:before {
  content: "\f28b";
  position: relative;
  margin-right: 8px;
  font-family: 'FontAwesome';
  color: rgb(var(--shp-accent));
}
a.current_lesson:focus, a.current_lesson:hover {
  color: #fff;
  text-decoration: none;
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(var(--shp-navy), .28);
}

/* ---------- Дополнительные возможности, продление, кнопки ---------- */
.standard-form {
  margin: 2px 0 20px;
  font-size: 14px;
  font-weight: 400;
  color: rgb(var(--shp-gray));
  background: linear-gradient(145deg, rgba(255,255,255,.85) 0%, rgba(232,244,250,.7) 100%);
  background-image: none;
  border: 1px solid rgba(255, 255, 255, .85);
  border-radius: 20px;
  box-shadow: 0 10px 30px rgba(var(--shp-navy), .10), inset 0 1px 0 #fff;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}

/* Предложения (первичная консультация и др.) */
.xdget-offer {
  border: 1px solid transparent;
  border-radius: 16px;
  transition: background-color .25s ease, border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}
.xdget-offer:hover {
  background: rgba(255, 255, 255, .6);
  border-color: rgba(var(--shp-teal), .4);
  box-shadow: 0 6px 16px rgba(var(--shp-navy), .08);
}
.xdget-offer.selected {
  background: rgba(var(--shp-teal), .12);
  border: 1px solid rgb(var(--shp-teal));
  border-radius: 16px;
  box-shadow: 0 0 0 3px rgba(var(--shp-teal), .16);
}

/* Кнопки «Продлить» и «child» — как «Написать куратору» */
.btn-success1,
.child {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 100%;
  min-height: 50px;
  margin: 15px auto;
  padding: 10px 28px;
  font-size: 16px;
  font-weight: 700 !important;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  text-shadow: none;
  color: #fff;
  background: linear-gradient(135deg, rgba(var(--shp-navy), .92) 0%, rgba(var(--shp-teal), .92) 100%);
  border: 1px solid rgba(255, 255, 255, .45);
  border-radius: 20px;
  box-shadow: 0 8px 20px rgba(var(--shp-navy), .22), inset 0 1px 0 rgba(255, 255, 255, .35);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  transition: transform .3s ease, box-shadow .3s ease;
  -webkit-tap-highlight-color: transparent;
}
.btn-success1:hover,
.child:hover {
  color: #fff;
  text-decoration: none;
  transform: translateY(-4px);
  box-shadow: 0 14px 28px rgba(var(--shp-navy), .28), 0 0 0 4px rgba(var(--shp-teal), .2),
              inset 0 1px 0 rgba(255, 255, 255, .45);
}

/* Картинки в блоках */
.xdget-common-container img {
  border-radius: 20px;
  transition: transform .3s ease, box-shadow .3s ease;
}
.xdget-common-container img:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 28px rgba(var(--shp-navy), .22), 0 0 0 3px rgba(var(--shp-teal), .2);
}

/* Недоступные уроки */
.lesson-list li.user-state-not_reached .info {
  background-image: url("https://fs.getcourse.ru/fileservice/file/download/a/687234/sc/502/h/08bb9b74d2e20c820126d6806170229d.png");
}

/* ---------- Страница тренинга: список уроков ---------- */
.page-menu {
  margin: 20px 0;
  padding: 15px;
  background: rgba(255, 255, 255, .6);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 255, 255, .85);
  border-radius: 20px;
  box-shadow: 0 8px 24px rgba(var(--shp-navy), .10), inset 0 1px 0 #fff;
}

/* Описание модуля */
.tecst { font-size: 16px; line-height: 1.6; font-weight: 500; color: rgb(var(--shp-gray)); }

/* Текстовый блок перед уроками: стеклянная карточка с оранжевой полоской слева */
.xdget-div.tecst {
  position: relative;
  margin: 20px 0;
  overflow: hidden;
  background: linear-gradient(145deg, rgba(255,255,255,.85) 0%, rgba(232,244,250,.7) 100%);
  border: 1px solid rgba(255, 255, 255, .85);
  border-radius: 24px;
  box-shadow: 0 10px 30px rgba(var(--shp-navy), .10), inset 0 1px 0 #fff;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
.xdget-div.tecst::before {
  content: "";
  position: absolute;
  top: 18px;
  bottom: 18px;
  left: 0;
  width: 5px;
  background: rgb(var(--shp-accent));
  border-radius: 0 5px 5px 0;
}
/* Внутренний блок не рисует вторую карточку; перебиваем inline margin: 20px */
.xdget-div.tecst .xdget-html.tecst {
  margin: 0 !important;
  padding: 22px 28px 14px 30px;
  background: transparent;
  border: 0;
  box-shadow: none;
}
.xdget-div.tecst .html-content p { margin: 0 0 14px; }
.xdget-div.tecst .html-content p:last-child { margin-bottom: 0; }
.xdget-div.tecst .html-content strong,
.xdget-div.tecst .html-content b { color: rgb(var(--shp-navy)); font-weight: 700; }
.xdget-div.tecst .html-content a { color: rgb(var(--shp-teal)); font-weight: 600; text-decoration: none; border-bottom: 1px solid rgba(var(--shp-teal), .4); }
.xdget-div.tecst .html-content a:hover { color: rgb(var(--shp-navy)); border-bottom-color: rgb(var(--shp-navy)); }
@media (max-width: 600px) {
  .xdget-div.tecst .xdget-html.tecst { padding: 18px 18px 10px 22px; }
}

.lesson-list { background: none !important; }

.lesson-list li {
  position: relative;
  overflow: hidden;
  margin-bottom: 12px;
  background: linear-gradient(145deg, rgba(255,255,255,.85) 0%, rgba(232,244,250,.7) 100%);
  border: 1px solid rgba(255, 255, 255, .85);
  border-radius: 24px;
  box-shadow: 0 8px 24px rgba(var(--shp-navy), .10), inset 0 1px 0 #fff;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.lesson-list li:hover {
  transform: translateY(-3px);
  border-color: rgba(var(--shp-teal), .6);
  box-shadow: 0 14px 30px rgba(var(--shp-navy), .16), 0 0 0 3px rgba(var(--shp-teal), .14), inset 0 1px 0 #fff;
}
.lesson-list li.divider { pointer-events: none; background: transparent; border: 0; box-shadow: none; }
.lesson-list li.divider:hover { transform: none; box-shadow: none; }

.lesson-list li a {
  height: fit-content;
  min-height: 120px;
  padding: 10px;
  background-image: none;
}
.lesson-list li .item-a { background-image: none; background: transparent; }
.lesson-list li .info,
.lesson-list li.user-state-not_reached .info,
.lesson-list li.user-state-reached .info {
  background: none;
  border-left: 0;
}
html .lesson-list .user-state-bg { background-image: none; background: transparent; }

.lesson-list li .title {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.25;
  color: rgb(var(--shp-navy));
}
.user-state-need_accomplish .user-state-label { color: rgb(var(--shp-teal)); }

/* Недоступные уроки: приглушённое стекло + замочек */
.lesson-list li.user-state-not_reached {
  background: linear-gradient(145deg, rgba(240,243,246,.8) 0%, rgba(225,232,238,.65) 100%);
}
.lesson-list li.user-state-not_reached .title { color: rgba(var(--shp-gray), .85); }
.lesson-list li.user-state-not_reached a { background-image: none; }

/* Значки уроков: старый контейнер GetCourse прячем (оставляя его место),
   а единый круглый значок рисуем псевдоэлементом на самой плашке — овалов быть не может */
.lesson-list li .state-icon-block { visibility: hidden; }
.lesson-list li a.item-a { position: relative; }
.lesson-list li a.item-a::before {
  content: "\f04b";                 /* &#9654; по умолчанию */
  font-family: FontAwesome;
  position: absolute;
  top: 50%;
  left: 16px;
  transform: translateY(-50%);
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 46px;
  height: 46px;
  font-size: 18px;
  line-height: 1;
  color: rgb(var(--shp-navy));
  background: rgba(var(--shp-teal), .16);
  border: 1px solid rgba(var(--shp-teal), .35);
  border-radius: 50%;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8);
  transition: background-color .3s ease, transform .3s ease;
  pointer-events: none;
}
.lesson-list li:hover a.item-a::before { background: rgba(var(--shp-teal), .28); transform: translateY(-50%) scale(1.06); }
/* Пройдено — галочка */
.lesson-list li.user-state-reached a.item-a::before { content: "\f00c"; }
/* Нужно выполнить задание — оранжевый значок со стрелкой */
.lesson-list li.user-state-need_accomplish a.item-a::before {
  content: "\f105";
  font-size: 24px;
  background: rgba(var(--shp-accent), .5);
  border-color: rgba(var(--shp-accent), .9);
}
/* Недоступно — замочек */
.lesson-list li.user-state-not_reached a.item-a::before {
  content: "\f023";
  color: rgba(var(--shp-gray), .75);
  background: rgba(var(--shp-gray), .1);
  border-color: rgba(var(--shp-gray), .25);
}
@media (max-width: 767px) { .lesson-list li a.item-a::before { display: none; } }

/* ---------- Шкала достижений ---------- */
.xdget-trainingAchievements {
  max-width: 440px;
  margin: 0 auto;
  padding: 20px 20px 10px;
  font-family: Gilroy, Montserrat, Arial, sans-serif;
  background: linear-gradient(145deg, rgba(255,255,255,.85) 0%, rgba(232,244,250,.7) 100%);
  border: 1px solid rgba(255, 255, 255, .85);
  border-radius: 24px;
  box-shadow: 0 10px 30px rgba(var(--shp-navy), .10), inset 0 1px 0 #fff;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
.xdget-trainingAchievements .table > thead > tr > th {
  padding: 0 0 15px;
  border: 0;
  font-size: 0;
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  color: rgb(var(--shp-navy));
}
.xdget-trainingAchievements .table > thead > tr > th::before { content: 'Мои достижения'; font-size: 20px; }
.xdget-trainingAchievements .table > tbody > tr > td {
  padding: 10px 0;
  vertical-align: middle;
  border-top: 1px solid rgba(var(--shp-teal), .2);
}
.xdget-trainingAchievements .table > tbody > tr > td a { font-size: 16px; color: rgb(var(--shp-navy)); }
.xdget-trainingAchievements .badge {
  margin: 0 !important;
  padding: 4px 12px;
  font-size: 14px;
  font-weight: 600;
  color: rgb(var(--shp-navy));
  background-color: rgb(var(--shp-accent));
  border-radius: 20px;
  box-shadow: 0 3px 8px rgba(var(--shp-accent), .45);
}
@media (max-width: 400px) {
  .xdget-trainingAchievements { padding: 15px 15px 10px; }
  .xdget-trainingAchievements .table > thead > tr > th { padding-bottom: 10px; }
  .xdget-trainingAchievements .table > thead > tr > th::before { font-size: 18px; }
  .xdget-trainingAchievements .table > tbody > tr > td a { font-size: 14px; }
  .xdget-trainingAchievements .badge { font-size: 12px; padding: 3px 8px; }
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .lesson-list li, .page-menu, .xdget-trainingAchievements { background: #FFFFFF; }
}

/* ---------- Шапка урока ---------- */
/* !important нужен: у блока есть встроенные inline-стили (фон #FAFAFA, рамка, отступы) */
.lesson-header-block {
  position: relative;
  margin: 0 0 24px;
  padding: 0 20px 6px !important;
  overflow: hidden;
  background: linear-gradient(145deg, rgba(255,255,255,.9) 0%, rgba(232,244,250,.75) 100%) !important;
  border: 1px solid rgba(255, 255, 255, .85) !important;
  border-radius: 0 0 28px 28px;
  box-shadow: 0 12px 32px rgba(var(--shp-navy), .12), inset 0 1px 0 #fff;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
.lesson-header-block::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 90px;
  height: 4px;
  transform: translateX(-50%);
  background: rgb(var(--shp-accent));
  border-radius: 0 0 4px 4px;
}
.lesson-header-block .lesson-title-value {
  margin: 8px 0 6px;
  font-family: Gilroy, Montserrat, Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.25;
  color: rgb(var(--shp-navy));
}
.lesson-header-block .lesson-description-value { color: rgb(var(--shp-gray)); font-size: 16px; }

/* Навигация: предыдущий / следующий */
.lesson-header-block .lesson-navigation { padding-top: 14px !important; }
.lesson-header-block .lesson-navigation table td { vertical-align: top; }
.lesson-header-block .lesson-navigation td > a {
  display: inline-block;
  margin-bottom: 4px;
  padding: 7px 16px;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  color: rgb(var(--shp-navy));
  background: rgba(255, 255, 255, .65);
  border: 1px solid rgba(var(--shp-teal), .45);
  border-radius: 999px;
  box-shadow: 0 4px 12px rgba(var(--shp-navy), .08);
  transition: transform .3s ease, box-shadow .3s ease, background .3s ease, color .3s ease;
}
.lesson-header-block .lesson-navigation td > a:hover {
  color: #fff;
  background: linear-gradient(135deg, rgb(var(--shp-navy)) 0%, rgb(var(--shp-teal)) 100%);
  transform: translateY(-2px);
  box-shadow: 0 8px 18px rgba(var(--shp-navy), .22);
}
.lesson-header-block .lesson-navigation td > div { margin-top: 2px; color: rgba(var(--shp-gray), .85); }

/* Прогресс «6 из 8 уроков» и статус задания */
.lesson-header-block .lesson-navigation td.text-center > span {
  display: inline-block;
  padding: 3px 14px;
  font-size: 13px;
  font-weight: 700;
  color: rgb(var(--shp-navy));
  background: rgba(var(--shp-teal), .14);
  border-radius: 999px;
}
.lesson-header-block .user-state-label {
  display: inline-block;
  margin-top: 6px;
  padding: 3px 14px;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: rgb(var(--shp-navy));
  background: rgba(var(--shp-accent), .45);
  border-radius: 999px;
}
@media (max-width: 600px) {
  .lesson-header-block .lesson-title-value { font-size: 22px; }
}

/* ---------- Ответы на задания и комментарии ---------- */
/* Поля ответа (были белым serif-текстом на светлом фоне) */
.addfield label,
.addfield .value,
.addfield .empty-value {
  font-family: Gilroy, Montserrat, Arial, sans-serif;
  font-style: normal;
}
.addfield label {
  display: block;
  margin-bottom: 4px;
  font-size: 14px;
  font-weight: 700;
  color: rgb(var(--shp-navy));
}
.addfield .value,
.addfield .empty-value {
  font-size: 15px;
  font-weight: 500;
  color: rgb(var(--shp-gray));
}

/* Карточка ответа ученика */
.answer_wrapper.user-answer {
  box-sizing: border-box;
  margin: 16px 0;
  padding: 16px 18px 12px;
  background: linear-gradient(145deg, rgba(255,255,255,.85) 0%, rgba(232,244,250,.7) 100%);
  border: 1px solid rgba(255, 255, 255, .85);
  border-radius: 20px;
  box-shadow: 0 8px 24px rgba(var(--shp-navy), .10), inset 0 1px 0 #fff;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
.answer-main-content .main {
  margin: 10px 0 8px;
  padding: 12px 16px;
  background: rgba(var(--shp-teal), .10);
  border: 1px solid rgba(var(--shp-teal), .22);
  border-radius: 14px;
}
.answer-content .title .user-profile-link,
.answer-content .title .user-profile-link .text { font-weight: 700; color: rgb(var(--shp-navy)); text-decoration: none; }
.answer-content .title .answer-date a { font-weight: 600; color: rgb(var(--shp-teal)); text-decoration: none; }
.answer-status > a { color: rgb(var(--shp-teal)); font-weight: 600; text-decoration: none; }
.answer-status > a:hover { color: rgb(var(--shp-navy)); }

/* Статус «Задание принято» */
.answer-status-label {
  padding: 4px 12px;
  font-weight: 700;
  border-radius: 999px;
  box-shadow: 0 3px 8px rgba(var(--shp-navy), .15);
}
.status-accepted .answer-status-label {
  color: #fff;
  background: linear-gradient(135deg, rgb(var(--shp-teal)) 0%, rgb(var(--shp-navy)) 100%);
}
.public-level-block { color: rgba(var(--shp-gray), .85); }

/* «Нравится» / «Подписаться» */
.b-like-and-subscribe-notifications .button,
.b-like-and-subscribe-notifications .button .html {
  font-weight: 600;
  color: rgb(var(--shp-teal));
  transition: color .25s ease;
}
.b-like-and-subscribe-notifications .button:hover,
.b-like-and-subscribe-notifications .button:hover .html { color: rgb(var(--shp-navy)); }

/* Аватары */
.answer_wrapper .user-profile-image,
.gc-comment-form .user-profile-image {
  border: 2px solid #fff;
  border-radius: 50%;
  box-shadow: 0 3px 10px rgba(var(--shp-navy), .18);
}

/* Поле комментария */
.gc-comment-form .new-comment-textarea {
  padding: 8px 12px;
  font-family: Gilroy, Montserrat, Arial, sans-serif;
  font-size: 15px;
  color: rgb(var(--shp-navy));
  background: rgba(255, 255, 255, .8);
  border: 1px solid rgba(var(--shp-teal), .4);
  border-radius: 14px;
  box-shadow: inset 0 1px 3px rgba(var(--shp-navy), .06);
  transition: border-color .25s ease, box-shadow .25s ease;
}
.gc-comment-form .new-comment-textarea::placeholder { color: rgba(var(--shp-gray), .7); }
.gc-comment-form .new-comment-textarea:focus {
  outline: none;
  border-color: rgb(var(--shp-teal));
  box-shadow: 0 0 0 3px rgba(var(--shp-teal), .2);
}
.uploadifive-button .glyphicon-paperclip { color: rgb(var(--shp-teal)) !important; }
.gc-comment-form .emoji-button { color: rgb(var(--shp-teal)); }

/* Кнопка «Отправить» у комментария */
.gc-comment-form .btn.btn-send,
.gc-comment-form .btn.btn-primary {
  padding: 8px 20px;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(135deg, rgba(var(--shp-navy), .92) 0%, rgba(var(--shp-teal), .92) 100%);
  border: 1px solid rgba(255, 255, 255, .4);
  border-radius: 14px;
  box-shadow: 0 6px 16px rgba(var(--shp-navy), .2);
  transition: transform .3s ease, box-shadow .3s ease;
}
.gc-comment-form .btn.btn-send:hover,
.gc-comment-form .btn.btn-primary:hover {
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(var(--shp-navy), .28);
}

/* Всплывающая подсказка */
.custom-tooltip,
.custom-tooltip .tooltip-in-inner {
  color: #fff;
  background-color: rgba(var(--shp-navy), .95);
  border-radius: 10px;
}
.custom-tooltip .tooltip-in-inner a { color: rgb(var(--shp-accent)); }

/* ---------- Календарь ---------- */
.current-page-events { display: none; }

.mini-cal {
  -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;
  padding: 1.5em;
  font-family: Gilroy, Geologica, Raleway, sans-serif;
  background: rgba(255, 255, 255, .72);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 255, 255, .85);
  color: rgb(var(--shp-gray));
  border-radius: 24px;
  box-shadow: 0 10px 30px rgba(var(--shp-navy), .10);
}
#full_calender { padding: 1.4em 0; }
#calendar { padding: 20px; }

#calTitle {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.12em;
  text-align: left;
  padding: .8em 1em .4em;
}
#calTitle button {
  outline: none;
  display: block;
  border: none;
  padding: 0;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background-color: rgb(var(--shp-teal));
  transition: background-color .3s ease, transform .3s ease;
}
#calTitle button:hover { background-color: rgb(var(--shp-navy)); transform: translateY(-1px); }
#calTitle button svg { width: 24px; height: 34px; }
#calTitle button svg path { stroke: #fff; }
#calTitle button.month-mover.next { margin-left: 10px; }
#calTitle button.month-mover_disabled { opacity: .5; }
#monthYear > span.current-month { display: none; }
#monthYear { font-size: 19px; font-weight: bold; text-transform: uppercase; color: rgb(var(--shp-navy)); }
#calTitle_month { display: flex; align-items: end; justify-content: space-evenly; }

#calThead, #calTbody { display: flex; flex-wrap: wrap; padding: .1em; }
#calThead { color: rgba(var(--shp-gray), .7); margin-top: .4em; align-items: center; text-align: center; font-size: .88em; }
#calThead > div, #calTbody .a-date {
  box-sizing: border-box;
  flex: 1;
  min-width: calc(100% / 7);
  max-width: calc(100% / 7);
  width: calc(100% / 7);
  text-align: center;
  padding: 0;
}
#calThead > div { font-size: .77em; padding: .2em; }
#calTbody { color: rgb(var(--shp-navy)); }
#calTbody .a-date > span { display: block; font-size: .77em; }

#calTbody .a-date {
  position: relative;
  z-index: 10;
  cursor: default;
  padding: 1em .5em;
  font-size: .9em;
  color: inherit;
  border: .1em solid transparent;
  outline: none;
  background: transparent !important;
}
#calTbody .a-date.blurred { opacity: .5; pointer-events: none; }

/* День с событием — мягкий оранжевый акцент */
#calTbody .a-date.event:before {
  content: '';
  position: absolute;
  top: calc(50% - 17px);
  left: calc(50% - 17px);
  width: 34px;
  height: 34px;
  background: rgba(var(--shp-accent), .45);
  z-index: -10;
  border-radius: 10px;
}
/* Текущий день */
#calTbody .a-date.current { border: none; outline: none; color: #fff; }
#calTbody .a-date.current:before {
  content: '';
  position: absolute;
  top: calc(50% - 17px);
  left: calc(50% - 17px);
  width: 34px;
  height: 34px;
  margin: 0;
  background: rgb(var(--shp-teal));
  z-index: -1;
  border-radius: 10px;
}
#calTbody .a-date.current.event { background-color: transparent; }
#calTbody .a-date:focus, #calTbody .a-date:active { color: #fff; }
#calTbody .a-date:focus:after, #calTbody .a-date:active:after {
  content: '';
  position: absolute;
  top: calc(50% - 17px);
  left: calc(50% - 17px);
  width: 34px;
  height: 34px;
  margin: 0;
  background: rgb(var(--shp-navy));
  z-index: -1;
  border-radius: 10px;
}

#calTFooter {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: .5em;
  padding: 10px 15px 20px;
  font-size: 1.1em;
  background: rgba(var(--shp-accent), .22);
  border: 1px solid rgba(var(--shp-accent), .5);
  border-radius: 14px;
}
#calTFooter #calLink { display: inline-block; flex-shrink: 0; padding: .6em .8em; font-size: .8em; text-decoration: none; color: rgb(var(--shp-teal)); }
#calTFooter #calLink:hover { background-color: rgba(var(--shp-teal), .15); border-radius: 8px; }
#calTFooter a.day-event-item { color: rgb(var(--shp-navy)); }
#calTFooter h3.eventTitle {
  display: flex;
  flex-direction: column;
  margin: 0 .1em 0 0;
  padding-top: 10px;
  font-size: 14px;
  font-weight: 400;
  text-align: left;
  color: rgb(var(--shp-gray));
  white-space: normal;
  overflow: hidden;
}
#calTFooter_event { padding: 1.4em 1em; }
#calTFooter_event #eventTitle_today { font-weight: 600; font-size: 16px; text-align: left; }
span.eventTimes { padding-bottom: 5px; font-size: 16px; font-weight: 600; text-align: left; color: rgb(var(--shp-teal)); }
span.eventTitle { padding-left: 0; }

@media (max-width: 640px) {
  #calendar { padding: 15px; }
  #monthYear { font-size: 17px; }
}

/* Fallback без backdrop-filter */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .stream-table tbody tr, .mini-cal { background: #FFFFFF !important; }
}
@media (prefers-reduced-motion: reduce) {
  .kurator, .stream-table tbody tr, .stream-table tr td::after, #calTitle button { transition: none !important; }
}

/* ===== ВХОДЯЩИЕ (обращения /pl/tasks/resp) — стекло ===== */
.resp-screen {
  font-family: Gilroy, "Segoe UI", Arial, sans-serif;
  background: linear-gradient(160deg, rgba(var(--shp-navy), .06) 0%, rgba(var(--shp-teal), .14) 100%) !important;
}

/* шапка с фильтрами */
.resp-screen .resp-header {
  background: linear-gradient(135deg, rgb(var(--shp-navy)) 0%, rgb(14, 78, 118) 60%, rgb(var(--shp-teal)) 130%) !important;
  border: 0 !important;
  box-shadow: 0 6px 24px rgba(var(--shp-navy), .25);
  color: #fff;
}
.resp-screen .resp-screen-title { color: #fff; font-weight: 700; letter-spacing: .02em; }
.resp-screen .resp-filter-block a { color: #fff !important; opacity: .85; transition: opacity .2s; }
.resp-screen .resp-filter-block a:hover { opacity: 1; }

.resp-screen .resp-filter .variant,
.resp-screen .resp-filter .type {
  display: inline-block;
  padding: 4px 12px;
  margin: 2px;
  color: #fff;
  background: rgba(255, 255, 255, .12);
  border: 1px solid rgba(255, 255, 255, .28);
  border-radius: 999px;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  cursor: pointer;
  transition: background .2s, transform .2s, color .2s;
}
.resp-screen .resp-filter .variant:hover,
.resp-screen .resp-filter .type:hover { background: rgba(255, 255, 255, .25); transform: translateY(-1px); }
.resp-screen .resp-filter .variant.selected,
.resp-screen .resp-filter .type.selected {
  background: rgb(var(--shp-accent));
  border-color: rgb(var(--shp-accent));
  color: rgb(var(--shp-navy));
  font-weight: 700;
}
.resp-screen .resp-filter .variant label { margin: 0 6px 0 0; font-weight: 500; cursor: pointer; }
.resp-screen .resp-filter select {
  padding: 4px 10px;
  color: rgb(var(--shp-navy));
  background: rgba(255, 255, 255, .92);
  border: 1px solid rgba(255, 255, 255, .6);
  border-radius: 10px;
  outline: none;
}
.resp-screen .close-all {
  padding: 5px 14px;
  color: rgb(var(--shp-navy)) !important;
  background: rgba(255, 255, 255, .9);
  border: 1px solid rgba(255, 255, 255, .6);
  border-radius: 10px !important;
  font-weight: 600;
  transition: background .2s, transform .2s;
}
.resp-screen .close-all:hover { background: rgb(var(--shp-accent)); transform: translateY(-1px); }

/* левая колонка: темы */
.resp-screen .resp-left-block { background: transparent !important; }
.resp-screen .resp-subject-list { padding: 10px 10px 0; margin: 0; list-style: none; }
.resp-screen .subject-item {
  position: relative;
  margin-bottom: 6px;
  padding: 10px 14px;
  color: rgb(var(--shp-navy));
  background: linear-gradient(145deg, rgba(255, 255, 255, .8), rgba(232, 244, 250, .6));
  border: 1px solid rgba(255, 255, 255, .85);
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(var(--shp-navy), .08);
  cursor: pointer;
  transition: transform .2s, box-shadow .2s;
}
.resp-screen .subject-item:hover { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(var(--shp-navy), .15); }
.resp-screen .subject-item.active {
  background: linear-gradient(145deg, rgba(255, 255, 255, .97), rgba(255, 255, 255, .85));
  border-left: 4px solid rgb(var(--shp-accent));
  font-weight: 700;
}
.resp-screen .subject-item .badge {
  color: rgb(var(--shp-navy));
  background: rgba(var(--shp-teal), .22);
  border-radius: 999px;
  font-weight: 600;
}

/* список обращений */
.resp-screen .resp-list { padding: 8px 10px; margin: 0; list-style: none; background: transparent !important; }
.resp-screen .resp-list > li {
  position: relative;
  margin-bottom: 8px;
  padding: 12px 14px;
  background: linear-gradient(145deg, rgba(255, 255, 255, .85) 0%, rgba(232, 244, 250, .65) 100%);
  border: 1px solid rgba(255, 255, 255, .9);
  border-radius: 14px;
  box-shadow: 0 2px 10px rgba(var(--shp-navy), .08);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  cursor: pointer;
  transition: transform .2s, box-shadow .2s, border-color .2s;
}
.resp-screen .resp-list > li:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(var(--shp-navy), .16);
  border-color: rgba(var(--shp-teal), .6);
}
.resp-screen .resp-list > li.active,
.resp-screen .resp-list > li.selected {
  border-left: 4px solid rgb(var(--shp-accent));
  background: linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(255, 255, 255, .85));
}
/* ждёт ответа (последнее сообщен
