

/*_____DOCTORPORTAL_____Боковое меню_____*/
/*
   Все размеры выверены на живой странице академии.

   Важно при правках:
   • Родная ширина панели 70px, субменю висит на left:70px.
     Отступ сделан ПРОЗРАЧНОЙ РАМКОЙ (box-sizing:border-box),
     поэтому внешние габариты не меняются.
   • left у субменю считается от ВНУТРЕННЕГО края панели:
     при ширине 92 и рамке 8 это 84, а не 92.
   • Пункт поиска — menu-item-search (НЕ menu-item-main).
*/

/*——— ПАНЕЛЬ ———*/
.gc-account-leftbar,
.gc-account-leftbar.expanded {
  background: #152751 !important;
  width: 92px !important;
  box-sizing: border-box !important;
  border: 8px solid transparent !important;
  border-radius: 20px !important;
  background-clip: padding-box !important;
}
.gc-account-leftbar .gc-account-user-submenu-bar {
  background: #4C84F7 !important;
  left: 84px !important;
  box-sizing: border-box !important;
  border: 8px solid transparent !important;
  border-width: 0 8px !important;
  border-radius: 20px !important;
  background-clip: padding-box !important;
}
.gc-main-content.with-left-menu { margin-left: 92px !important; }

/*——— КНОПКИ ———*/
.gc-account-leftbar .gc-account-user-menu > li {
  border-bottom: none !important;
  margin: 4px 0 !important;
  text-align: center !important;
}
.gc-account-leftbar .gc-account-user-menu { padding-top: 6px !important; }
.gc-account-leftbar .gc-account-user-menu > li.menu-item-profile { margin-bottom: 12px !important; }
.gc-account-leftbar .gc-account-user-menu > li > a {
  display: inline-block !important;
  float: none !important;
  position: relative !important;
  width: 52px !important;
  height: 52px !important;
  line-height: 52px !important;
  padding: 0 !important;
  border-radius: 12px;
  background: transparent !important;
  transition: background .15s ease-in-out;
  text-align: center;
}
.menu-item-profile img {
  width: 52px !important;
  height: 52px !important;
  border-radius: 10px;
  border: 2px solid #FFF;
  object-fit: cover;
}
.menu-item-profile img:hover { border-color: #4C84F7; }

/*——— СОСТОЯНИЯ ———*/
.gc-account-leftbar .gc-account-user-menu li a:hover { background: rgba(255,255,255,.10) !important; }
.gc-account-leftbar .gc-account-user-menu li a:focus,
.gc-account-leftbar .gc-account-user-menu li a:active,
.gc-account-leftbar .gc-account-user-menu li a:visited {
  background: transparent !important;
  outline: none !important;
}
.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.active > a:hover,
.gc-account-leftbar .gc-account-user-menu li.selected > a:hover,
.gc-account-leftbar .gc-account-user-menu li.active > a:focus,
.gc-account-leftbar .gc-account-user-menu li.selected > a:focus {
  background: #4C84F7 !important;
}
.gc-account-leftbar .gc-account-user-menu li.menu-item-profile a,
.gc-account-leftbar .gc-account-user-menu li.menu-item-profile a:hover,
.gc-account-leftbar .gc-account-user-menu li.menu-item-profile a:focus {
  background: transparent !important;
}

/*——— ИКОНКИ ———*/
.gc-account-user-menu > li.menu-item-search img.menu-item-icon,
.gc-account-user-menu > li.menu-item-notifications_button_small img.menu-item-icon,
.gc-account-user-menu > li.menu-item-cms img.menu-item-icon,
.gc-account-user-menu > li.menu-item-teach img.menu-item-icon,
.gc-account-user-menu > li.menu-item-user img.menu-item-icon,
.gc-account-user-menu > li.menu-item-tasks img.menu-item-icon,
.gc-account-user-menu > li.menu-item-notifications img.menu-item-icon,
.gc-account-user-menu > li.menu-item-sales img.menu-item-icon,
.gc-account-user-menu > li.new-chatium-icon img.menu-item-icon,
.gc-account-user-menu > li.menu-item-chatium img.menu-item-icon {
  display: none !important;
}
.gc-account-user-submenu li a:after,
.gc-account-user-submenu li a:before { content: none !important; }
.gc-account-user-menu > li.menu-item-search > a:after { content:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'24'%20height%3D'24'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23FFFFFF'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D'11'%20cy%3D'11'%20r%3D'7.5'%2F%3E%3Cpath%20d%3D'M21%2021l-4.3-4.3'%2F%3E%3C%2Fsvg%3E") !important; }
.gc-account-user-menu > li.menu-item-notifications_button_small > a:after { content:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'24'%20height%3D'24'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23FFFFFF'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M18%208.5a6%206%200%2010-12%200c0%206-2.5%208-2.5%208h17S18%2014.5%2018%208.5'%2F%3E%3Cpath%20d%3D'M13.8%2021a2.1%202.1%200%2001-3.6%200'%2F%3E%3C%2Fsvg%3E") !important; }
.gc-account-user-menu > li.menu-item-cms > a:after { content:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'24'%20height%3D'24'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23FFFFFF'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D'12'%20cy%3D'12'%20r%3D'9.5'%2F%3E%3Cpath%20d%3D'M2.5%2012h19'%2F%3E%3Cpath%20d%3D'M12%202.5c2.4%202.6%203.8%206%203.8%209.5s-1.4%206.9-3.8%209.5c-2.4-2.6-3.8-6-3.8-9.5S9.6%205.1%2012%202.5z'%2F%3E%3C%2Fsvg%3E") !important; }
.gc-account-user-menu > li.menu-item-teach > a:after { content:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'24'%20height%3D'24'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23FFFFFF'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Crect%20x%3D'2'%20y%3D'7'%20width%3D'20'%20height%3D'13.5'%20rx%3D'2.5'%2F%3E%3Cpath%20d%3D'M8%207V5.2A2.2%202.2%200%200110.2%203h3.6A2.2%202.2%200%200116%205.2V7'%2F%3E%3Cpath%20d%3D'M12%2011.5v3.5'%2F%3E%3C%2Fsvg%3E") !important; }
.gc-account-user-menu > li.menu-item-user > a:after { content:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'24'%20height%3D'24'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23FFFFFF'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D'9'%20cy%3D'7.5'%20r%3D'4'%2F%3E%3Cpath%20d%3D'M2%2021v-1.5A5.5%205.5%200%20017.5%2014h3A5.5%205.5%200%200116%2019.5V21'%2F%3E%3Cpath%20d%3D'M17%204a4%204%200%20010%207.5'%2F%3E%3Cpath%20d%3D'M19%2014.2a5.5%205.5%200%20013%204.9V21'%2F%3E%3C%2Fsvg%3E") !important; }
.gc-account-user-menu > li.menu-item-tasks > a:after { content:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'24'%20height%3D'24'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23FFFFFF'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M21%2011.5V19a2.5%202.5%200%2001-2.5%202.5h-13A2.5%202.5%200%20013%2019V6a2.5%202.5%200%20012.5-2.5H15'%2F%3E%3Cpath%20d%3D'M8.5%2011.5l3.2%203.2L22%204.5'%2F%3E%3C%2Fsvg%3E") !important; }
.gc-account-user-menu > li.menu-item-notifications > a:after { content:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'24'%20height%3D'24'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23FFFFFF'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M3%205.8A1.8%201.8%200%20014.8%204h8.4A1.8%201.8%200%200115%205.8v4.9a1.8%201.8%200%2001-1.8%201.8H7.2L3%2015.6z'%2F%3E%3Cpath%20d%3D'M18%208.2h1.2A1.8%201.8%200%200121%2010v4.9a1.8%201.8%200%2001-1.8%201.8H18V20l-3.4-3.3'%2F%3E%3C%2Fsvg%3E") !important; }
.gc-account-user-menu > li.menu-item-sales > a:after { content:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'24'%20height%3D'24'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23FFFFFF'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D'9.5'%20cy%3D'20'%20r%3D'1.4'%2F%3E%3Ccircle%20cx%3D'18.5'%20cy%3D'20'%20r%3D'1.4'%2F%3E%3Cpath%20d%3D'M2%203h3l2.6%2012.2a1.7%201.7%200%20001.7%201.3h8.5a1.7%201.7%200%20001.7-1.3L22%207H6'%2F%3E%3C%2Fsvg%3E") !important; }
.gc-account-user-menu > li.new-chatium-icon > a:after { content:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'24'%20height%3D'24'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23FFFFFF'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Crect%20x%3D'5.5'%20y%3D'2'%20width%3D'13'%20height%3D'20'%20rx%3D'2.5'%2F%3E%3Cpath%20d%3D'M12%2018.2h.01'%2F%3E%3C%2Fsvg%3E") !important; }
.gc-account-user-menu > li.menu-item-chatium > a:after { content:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20width%3D'24'%20height%3D'24'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%23FFFFFF'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Crect%20x%3D'3'%20y%3D'3'%20width%3D'7.5'%20height%3D'7.5'%20rx%3D'1.8'%2F%3E%3Crect%20x%3D'13.5'%20y%3D'3'%20width%3D'7.5'%20height%3D'7.5'%20rx%3D'1.8'%2F%3E%3Crect%20x%3D'3'%20y%3D'13.5'%20width%3D'7.5'%20height%3D'7.5'%20rx%3D'1.8'%2F%3E%3Crect%20x%3D'13.5'%20y%3D'13.5'%20width%3D'7.5'%20height%3D'7.5'%20rx%3D'1.8'%2F%3E%3C%2Fsvg%3E") !important; }
.gc-account-user-menu > li > a:after {
  display: inline-block;
  vertical-align: middle;
  line-height: 0;
}

/* «Mobile» (/chatium) — кастовый пункт из чужого примера, в GetCourse его нет */
.gc-account-leftbar .gc-account-user-menu > li.new-chatium-icon {
  display: none !important;
}

/*——— СЧЁТЧИКИ: в родной вёрстке у каждого своё положение ———*/
.gc-account-leftbar .gc-account-user-menu > li .notify-count {
  position: absolute !important;
  top: -4px !important;
  right: -4px !important;
  bottom: auto !important;
  left: auto !important;
  min-width: 18px !important;
  height: 18px !important;
  padding: 0 5px !important;
  line-height: 18px !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  border-radius: 9px !important;
  box-sizing: border-box !important;
  background: #4C84F7 !important;
  color: #FFF !important;
  z-index: 2;
}
.gc-account-leftbar .notify-count:empty { display: none !important; }

/*——— СУБМЕНЮ ———*/
.gc-account-user-submenu-bar h3 {
  color: #FFF !important;
  text-transform: none !important;
  margin: 22px 0 14px !important;
  padding-left: 18px !important;
}
.gc-account-user-submenu-bar .gc-account-user-submenu li a {
  font-weight: 400 !important;
  color: #FFF !important;
  text-transform: none !important;
  padding: 10px 14px 10px 18px !important;
  margin: 2px 6px !important;
  border-radius: 8px;
  transition: background .15s;
}
.gc-account-user-submenu-bar .gc-account-user-submenu li a:hover {
  background: #152751 !important;
  color: #FFF !important;
}
.gc-account-user-submenu-bar .gc-account-user-submenu li.active a,
.gc-account-user-submenu-bar .gc-account-user-submenu li.selected a {
  background: #152751 !important;
}
.gc-account-user-submenu-bar li[class*="gus"],
.gc-account-user-submenu-bar [class*="rate-block"],
.gc-account-user-submenu-bar [class*="feedback-block"] { display: none !important; }

/*——— ЛОГОТИП ВНИЗУ ———*/
.gc-account-leftbar:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 18px;
  transform: translateX(-50%);
  width: 36px;
  height: 32px;
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA5MTAgODcwJyBmaWxsPSdub25lJz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9J2cnIHgxPScwJyB5MT0nLjEnIHgyPScxJyB5Mj0nLjknPjxzdG9wIG9mZnNldD0nMCcgc3RvcC1jb2xvcj0nIzZERUFGMCcvPjxzdG9wIG9mZnNldD0nLjQ1JyBzdG9wLWNvbG9yPScjNDlBMkYyJy8+PHN0b3Agb2Zmc2V0PScxJyBzdG9wLWNvbG9yPScjMkQ2OUY2Jy8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHBhdGggZD0nTTE2OCAwaDMwMGE0MzUgNDM1IDAgMCAxIDAgODcwSDE2OGE0NSA0NSAwIDAgMS00NS00NVY0NUE0NSA0NSAwIDAgMSAxNjggMHonIGZpbGw9JyNGMkYyRjInIHN0cm9rZT0nbm9uZScvPjxwYXRoIGQ9J001MCAxMDUgTDQ4OSAxNTkgUTUzOSAxNjYgNTM5IDIxNiBMNTM5IDY1OSBRNTM5IDcwOSA0ODkgNzE2IEw1MCA3NjkgUTAgNzc2IDAgNzI2IEwwIDE0OCBRMCA5OCA1MCAxMDUgWicgZmlsbD0ndXJsKCNnKScgc3Ryb2tlPSdub25lJy8+PC9zdmc+") center / contain no-repeat;
  pointer-events: none;
}

.gc-fade {
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
}

/*——— МОБИЛЬНАЯ ———*/
@media (max-width: 768px) {
  .gc-account-leftbar,
  .gc-account-leftbar.expanded {
    width: 70px !important;
    border-width: 0 !important;
    border-radius: 0 !important;
  }
  .gc-account-leftbar .gc-account-user-submenu-bar {
    left: 70px !important;
    border-width: 0 !important;
    border-radius: 0 !important;
  }
  .gc-account-leftbar .gc-account-user-menu > li > a { width: 46px !important; height: 46px !important; }
  .menu-item-profile img { width: 46px !important; height: 46px !important; }
  .gc-main-content.with-left-menu { margin-left: 0 !important; }
}


/*_____DOCTORPORTAL_____dp-fix-block: страница «Обучение»_____*/
/* Действует только там, где скрипт поставил на body класс dp-page. */
.dp-page .gc-account-logo { display: none !important; }
.dp-page .dp-logo { max-width: none !important; margin: 24px 0 56px -15px !important; }
.dp-page .xdget-col.dp-wide,
.dp-page .xdget-col:has(.xdget-trainingList) { width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important; }
.dp-page .gc-main-content { padding: 0 56px !important; }
.dp-page .gc-main-content .container { width: 100% !important; max-width: none !important; margin: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
.dp-page .gc-main-content .col-md-12 { padding-left: 0 !important; padding-right: 0 !important; }
@media (max-width: 768px) { .dp-page .gc-main-content { padding: 0 16px !important; } .dp-page .dp-logo { margin: 10px 0 22px -15px !important; } }

/* dp-grid-2col: две карточки в строке, справа место под виджеты */
.cards .stream-table tbody { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; max-width: 66% !important; }
@media (max-width: 1200px) { .cards .stream-table tbody { max-width: 100% !important; } }
@media (max-width: 768px) { .cards .stream-table tbody { grid-template-columns: 1fr !important; max-width: 100% !important; } }

/* dp-avatar-fix: аватар в меню — ровно одна рамка и надёжный клик.
   Гасим рамки/тени/обводки на всём, что лежит внутри пункта профиля,
   и возвращаем одну рамку только самой картинке. */
.gc-account-leftbar .gc-account-user-menu > li.menu-item-profile,
.gc-account-leftbar .gc-account-user-menu > li.menu-item-profile * {
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  background-image: none !important;
}
.gc-account-leftbar .gc-account-user-menu > li.menu-item-profile > a {
  position: relative;
  z-index: 2;
}
.gc-account-leftbar .gc-account-user-menu > li.menu-item-profile > a > img {
  box-sizing: border-box !important;
  width: 52px !important;
  height: 52px !important;
  border: 2px solid #FFF !important;
  border-radius: 10px !important;
  object-fit: cover;
  pointer-events: none;
}
.gc-account-leftbar .gc-account-user-menu > li .notify-count { pointer-events: none; }


/* DOCTORPORTAL — тема «Тренинги»: подтренинги, список уроков, страница урока */
/*
   Классы dp-training и dp-lesson ставит скрипт этой же темы:
   dp-training — страница тренинга (список подтренингов и/или уроков)
   dp-lesson   — страница самого урока
   Всё оформление привязано к ним, поэтому другие страницы не затрагиваются.
*/

/* ---------- ПЕРЕМЕННЫЕ ---------- */
.dp-training,
.dp-lesson {
  --dp-navy: #152751;
  --dp-blue: #4C84F7;
  --dp-blue-soft: #EAF0FE;
  --dp-text: #33415C;
  --dp-line: #E4EAF5;
  --dp-radius: 16px;
}

/* ---------- ФОН ---------- */
body.dp-training,
body.dp-lesson {
  background-image: url("https://fs.getcourse.ru/fileservice/file/download/a/921266/sc/56/h/55db52d9b5a09b994561704b4046de47.png");
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-color: #EFEFEF;
}
.dp-training .gc-main-content,
.dp-lesson .gc-main-content {
  background: transparent !important;
  padding: 0 56px !important;
}
.dp-training .gc-main-content .container,
.dp-lesson .gc-main-content .container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.dp-training .gc-account-logo,
.dp-lesson .gc-account-logo {
  display: none !important;
}

/* ---------- УМЕНЬШЕННАЯ НАДПИСЬ НАД НАЗВАНИЕМ ---------- */
.dp-logo-sm {
  display: block;
  width: 260px;
  aspect-ratio: 438 / 68;
  margin: 26px 0 14px;
  background: url("https://fs.getcourse.ru/fileservice/file/download/a/921266/sc/471/h/d872dd2149041377c2a71937870eb049.svg") left center / contain no-repeat;
}
.dp-training .page-header {
  border: none !important;
  padding-bottom: 0 !important;
  margin-bottom: 24px !important;
}
.dp-training .page-header h1 {
  font-size: 34px;
  line-height: 1.15;
  font-weight: 700;
  color: var(--dp-navy);
  margin: 0;
}
.dp-training .breadcrumb,
.dp-lesson .breadcrumb {
  background: none;
  padding-left: 0;
}

/* ---------- ПОДТРЕНИНГИ: карточки по три в ряд ---------- */
.dp-training .stream-table {
  width: 100% !important;
  margin: 0 0 34px !important;
  border: none !important;
  background: transparent !important;
}
.dp-training .stream-table tbody {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.dp-training .stream-table tbody tr,
.dp-training .stream-table tbody tr > td {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  border: none !important;
  background: transparent !important;
  padding: 0 !important;
}
.dp-training .stream-table tbody tr > td {
  background: #FFFFFF !important;
  border-radius: var(--dp-radius);
  box-shadow: 0 2px 12px rgba(21, 39, 81, .07);
  transition: box-shadow .2s ease, transform .2s ease;
  overflow: hidden;
}
.dp-training .stream-table tbody tr > td:hover {
  box-shadow: 0 8px 24px rgba(21, 39, 81, .14);
  transform: translateY(-2px);
}
.dp-training .stream-table tbody tr > td > a {
  display: block !important;
  min-height: 170px;
  padding: 22px 24px 24px;
  text-decoration: none !important;
  font-size: 14px;
  line-height: 1.45;
  color: var(--dp-text) !important;
}
.dp-training .stream-title {
  display: block;
  font-size: 18px !important;
  line-height: 1.25;
  font-weight: 700;
  color: var(--dp-blue) !important;
  margin: 0 0 8px;
}
.dp-training .lesson-count {
  display: block;
  font-size: 14px;
  color: var(--dp-navy);
  margin: 0 0 18px;
}
.dp-training .stream-table tbody tr.no-public > td { opacity: .55; }

/* ---------- УРОКИ: горизонтальные карточки ---------- */
.dp-training .lesson-list {
  background: none !important;
  padding: 0 !important;
  margin: 0 0 30px !important;
}
.dp-training .lesson-list li {
  position: relative;
  margin: 0 0 12px !important;
  border: none !important;
  border-radius: 14px;
  background: #FFFFFF !important;
  box-shadow: 0 2px 10px rgba(21, 39, 81, .06);
  transition: box-shadow .2s ease, transform .2s ease;
  overflow: hidden;
}
.dp-training .lesson-list li:hover {
  box-shadow: 0 8px 22px rgba(21, 39, 81, .13);
  transform: translateY(-1px);
}
.dp-training .lesson-list li .info,
.dp-training .lesson-list .user-state-bg {
  background: none !important;
  margin-left: 0 !important;
}
.dp-training .lesson-list .state-icon-block { display: none !important; }
.dp-training .lesson-list li a.item-a {
  display: block !important;
  padding: 18px 60px 18px 26px;
  text-decoration: none !important;
}
.dp-training .lesson-list li .title,
.dp-training .lesson-list li .link.title {
  font-size: 18px;
  line-height: 1.3;
  font-weight: 600;
  color: var(--dp-navy) !important;
  margin: 0;
}
.dp-training .lesson-list .description {
  margin-top: 6px;
  font-size: 14px;
  line-height: 1.45;
  color: var(--dp-text);
}
.dp-training .lesson-list .user-state-label {
  display: inline-block;
  margin: 0 0 8px;
  padding: 4px 12px;
  border-radius: 20px;
  background: var(--dp-blue-soft);
  color: #2D5BD0;
  font-size: 12.5px;
  font-weight: 500;
  line-height: 1.3;
}
.dp-training .lesson-list__video-watched {
  display: inline-block;
  margin-left: 10px;
  font-size: 12.5px;
  font-weight: 400;
  color: #7C8AA5;
  background: none !important;
}
.dp-training .lesson-list li:after {
  content: "";
  position: absolute;
  right: 26px;
  top: 50%;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  border-right: 2px solid var(--dp-blue);
  border-bottom: 2px solid var(--dp-blue);
  transform: rotate(-45deg);
  pointer-events: none;
}
.dp-training .lesson-list li.user-state-not_reached { opacity: .6; }
.dp-training .lesson-list li.user-state-not_reached:after { border-color: #9AA7BF; }
.dp-training .lesson-list li.divider {
  background: none !important;
  box-shadow: none !important;
  height: auto;
}
.dp-training .lesson-list li.divider:after { display: none; }
.dp-training .errorMessage {
  padding: 14px 18px;
  border-radius: 12px;
  background: #FFF3F3;
  color: #A8384A;
  font-size: 14px;
}

/* ==========================================================
   СТРАНИЦА УРОКА
   ========================================================== */
.dp-lesson .standard-page-content {
  max-width: 940px;
  margin: 0 auto;
}

/* ---------- ШАПКА УРОКА ---------- */
.dp-lesson .lesson-header-block {
  background: #FFFFFF !important;
  border: none !important;
  border-radius: 20px;
  overflow: hidden;
  padding: 0 !important;
  margin: 26px 0 30px !important;
  box-shadow: 0 4px 18px rgba(21, 39, 81, .08);
}
.dp-lesson .row.header-view > div {
  background: linear-gradient(120deg, #152751 0%, #2A4A8F 62%, #3C6BD6 100%);
  color: #FFFFFF;
  text-align: left !important;
  padding: 30px 34px 32px !important;
  min-height: 0;
}
.dp-lesson .lesson-title-value {
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  font-size: 30px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #FFFFFF !important;
}
.dp-lesson .lesson-description-value {
  display: block !important;
  margin: 10px 0 0 !important;
  padding: 0 !important;
  font-size: 15.5px;
  line-height: 1.5;
  color: rgba(255, 255, 255, .85) !important;
  text-align: left !important;
}
.dp-lesson .lesson-description-value:empty { display: none !important; }

/* ---------- НАВИГАЦИЯ ПО УРОКАМ ---------- */
.dp-lesson .lesson-navigation {
  height: auto !important;
  padding: 0 !important;
  background: #FFFFFF;
}
.dp-lesson .lesson-navigation > table { width: 100%; margin: 0; }
.dp-lesson .lesson-navigation > table > tbody > tr {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: auto;
}
.dp-lesson .lesson-navigation td { border: none !important; padding: 0 !important; }
.dp-lesson .lesson-navigation a {
  display: inline-flex;
  align-items: center;
  height: 40px;
  margin: 14px 18px;
  padding: 0 18px;
  border-radius: 12px;
  background: var(--dp-blue-soft);
  color: #2D5BD0 !important;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none !important;
  transition: all .2s;
}
.dp-lesson .lesson-navigation a:hover {
  background: var(--dp-blue);
  color: #FFFFFF !important;
}
.dp-lesson .lesson-navigation .text-center {
  font-size: 14px;
  color: #7C8AA5;
  text-align: center;
}

/* ---------- ДОМАШНЕЕ ЗАДАНИЕ ---------- */
.dp-lesson .lt-lesson-mission-block .container {
  max-width: none !important;
  margin: 0 0 30px !important;
  padding: 30px 34px 34px !important;
  background: #F4F7FE;
  border: 1px solid var(--dp-line);
  border-radius: 20px;
}
.dp-lesson .lt-lesson-mission-block h3 {
  margin: 0 0 16px !important;
  font-size: 24px;
  line-height: 1.2;
  font-weight: 700;
  color: var(--dp-navy);
}
.dp-lesson .lt-lesson-mission-block .lesson-mission-wrapper,
.dp-lesson .lt-lesson-mission-block .lesson-mission-text {
  background: none !important;
  border: none !important;
  padding: 0 !important;
}
.dp-lesson .lt-lesson-mission-block .lesson-mission-text {
  font-size: 15.5px !important;
  line-height: 1.6;
  color: var(--dp-text);
}
.dp-lesson .lt-lesson-mission-block .lesson-mission-text p { color: var(--dp-text); }
.dp-lesson .lt-lesson-mission-block .answer-form {
  margin: 24px 0 0 !important;
  padding: 22px 24px !important;
  background: #FFFFFF;
  border: 1px solid var(--dp-line);
  border-radius: 16px;
}
.dp-lesson .lt-lesson-mission-block .answer-form label,
.dp-lesson .lt-lesson-mission-block .text-muted,
.dp-lesson .why-no-form {
  color: var(--dp-text) !important;
}
.dp-lesson .lt-lesson-mission-block .answer-textarea-container { width: 100% !important; }
.dp-lesson .lt-lesson-mission-block .type-string,
.dp-lesson .lt-lesson-mission-block .emoji-container textarea,
.dp-lesson .lt-lesson-comment-block .new-comment-textarea {
  width: 100% !important;
  min-height: 52px !important;
  padding: 12px 14px !important;
  border: 1px solid var(--dp-line) !important;
  border-radius: 12px !important;
  background: #FFFFFF !important;
  color: var(--dp-navy) !important;
  font-size: 15px;
}
.dp-lesson .user-profile-image,
.dp-lesson .user-default-profile-image { border-radius: 50%; }

/* ---------- КНОПКИ ---------- */
.dp-lesson .btn-send-answer,
.dp-lesson .btn.btn-primary.btn-send,
.dp-lesson .btn-primary {
  padding: 12px 28px !important;
  border: none !important;
  border-radius: 12px !important;
  background: var(--dp-blue) !important;
  color: #FFFFFF !important;
  font-size: 14.5px;
  font-weight: 500;
  box-shadow: none !important;
  transition: background .2s;
}
.dp-lesson .btn-send-answer:hover,
.dp-lesson .btn.btn-primary.btn-send:hover,
.dp-lesson .btn-primary:hover {
  background: var(--dp-navy) !important;
  color: #FFFFFF !important;
}
.dp-lesson .btn-save-draft,
.dp-lesson .uploadifive-button {
  padding: 10px 20px !important;
  border: 1px solid var(--dp-blue) !important;
  border-radius: 12px !important;
  background: #FFFFFF !important;
  color: #2D5BD0 !important;
  font-size: 14px;
  font-weight: 500;
  transition: all .2s;
}
.dp-lesson .btn-save-draft:hover,
.dp-lesson .uploadifive-button:hover {
  background: var(--dp-blue) !important;
  color: #FFFFFF !important;
}
.dp-lesson input[type="radio"],
.dp-lesson input[type="checkbox"] { accent-color: var(--dp-blue); }

/* ---------- КОММЕНТАРИИ И ОТВЕТЫ ---------- */
.dp-lesson .lt-lesson-comment-block .container {
  max-width: none !important;
  padding: 0 !important;
}
.dp-lesson .lesson-answers-title {
  padding: 16px 24px;
  border-radius: 16px;
  background: linear-gradient(120deg, #152751 0%, #2A4A8F 100%);
  color: #FFFFFF;
}
.dp-lesson .lesson-answers-title h3 {
  margin: 0 !important;
  font-size: 18px;
  font-weight: 600;
  color: #FFFFFF;
}
.dp-lesson .lesson-answers-title a,
.dp-lesson .lesson-answers-title .pull-right { color: #C9DAFF !important; }
.dp-lesson .simple-answer,
.dp-lesson .answers-list .user-answer {
  margin: 14px 0 !important;
  padding: 20px 24px !important;
  background: #FFFFFF !important;
  border: 1px solid var(--dp-line) !important;
  border-radius: 16px !important;
}
.dp-lesson .answers-list .user-answer .answer-content .text,
.dp-lesson .answers-list .user-answer .answer-content .answer-date a {
  color: var(--dp-navy);
}
.dp-lesson .answers-list .user-answer .lesson-answer-comment,
.dp-lesson .answers-list .user-answer .comment.lesson-answer-comment {
  margin: 14px 0 6px !important;
  padding: 16px 18px !important;
  background: #F4F7FE !important;
  border: 1px solid var(--dp-line) !important;
  border-radius: 12px !important;
}
.dp-lesson .user-answer .answer-status .answer-status-label {
  padding: 4px 12px;
  border-radius: 20px;
  font-size: 12.5px;
  font-weight: 500;
}
.dp-lesson .user-answer.status-accepted .answer-status .answer-status-label,
.dp-lesson .user-answer.status-viewed .answer-status .answer-status-label {
  background: #E4F6EA !important;
  color: #1E7B3C !important;
}
.dp-lesson .user-answer.status-declined .answer-status .answer-status-label {
  background: #FDE7E7 !important;
  color: #C0392B !important;
}

/* ---------- МОБИЛЬНАЯ ВЕРСИЯ ---------- */
@media (max-width: 991px) {
  .dp-training .stream-table tbody { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 768px) {
  .dp-training .gc-main-content,
  .dp-lesson .gc-main-content { padding: 0 16px !important; }
  .dp-training .stream-table tbody { grid-template-columns: 1fr; gap: 14px; }
  .dp-logo-sm { width: 190px; margin: 16px 0 10px; }
  .dp-training .page-header h1 { font-size: 26px; }
  .dp-training .lesson-list li a.item-a { padding: 16px 44px 16px 18px; }
  .dp-training .lesson-list li .title { font-size: 16px; }
  .dp-lesson .row.header-view > div { padding: 22px 20px 24px !important; }
  .dp-lesson .lesson-title-value { font-size: 23px; }
  .dp-lesson .lt-lesson-mission-block .container { padding: 22px 18px 24px !important; }
  .dp-lesson .lesson-navigation > table > tbody > tr { flex-wrap: wrap; }
  .dp-lesson .lesson-navigation a { margin: 10px 12px; }
}

/* dp-nav-fix: навигация по урокам — вписать в карточку шапки */
.dp-lesson .lesson-navigation.row { margin-left: 0 !important; margin-right: 0 !important; }
.dp-lesson .lesson-navigation tr > td:first-child { text-align: left; }
.dp-lesson .lesson-navigation tr > td:last-child { text-align: right; }
.dp-lesson .lesson-navigation td .hidden-xs,
.dp-lesson .lesson-navigation td > div:not(.user-state-has_mission) { font-size: 13px; color: #7C8AA5; margin: 0 18px 12px; }
.dp-lesson .lesson-navigation td.text-center > div { margin: 2px 0 0; font-size: 13px; color: #7C8AA5; }
.dp-lesson .lesson-navigation td.text-center span { font-size: 14px; color: #4A5A78; }

/* dp-fix-2: правки по замечаниям */
/* полоска слева на карточке урока — родная граница у .info */
.dp-training .lesson-list li .info { border: none !important; }
/* контент урока не центрируем, отступ от меню поменьше */
.dp-lesson .gc-main-content { padding: 0 32px !important; }
.dp-lesson .standard-page-content { max-width: 940px !important; margin: 0 !important; }
/* все блоки урока по одной левой границе и с одинаковым правым краем */
.dp-lesson .lt-block-wrapper { padding-left: 0 !important; padding-right: 0 !important; }
.dp-lesson .lt-block-wrapper .container { width: 100% !important; max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
/* вместо пустого логотипа аккаунта — наша маленькая надпись */
.dp-lesson .logo-link {
  display: block;
  width: 200px;
  aspect-ratio: 438 / 68;
  margin: 18px 0 10px;
  background: url("https://fs.getcourse.ru/fileservice/file/download/a/921266/sc/471/h/d872dd2149041377c2a71937870eb049.svg") left center / contain no-repeat;
}
.dp-lesson .logo-link img { display: none !important; }
/* кнопка загрузки файла обрезала подпись */
.dp-lesson .uploadifive-button {
  height: auto !important;
  min-height: 38px !important;
  line-height: 38px !important;
  padding: 0 18px !important;
  overflow: visible !important;
}

/* dp-align: единый отступ от меню, ровный текст в ДЗ, скругление видео */
/* отступ такой же, как на главной и на странице тренинга */
.dp-lesson .gc-main-content { padding: 0 56px !important; }
/* карточке задания вернули собственные поля — заголовок и текст больше не липнут к краю */
.dp-lesson .lt-lesson-mission-block .lt-block-wrapper .container { padding: 30px 34px 34px !important; }
/* скругление у видео */
.dp-lesson .lt-video .modal-block-content { border-radius: 18px !important; overflow: hidden !important; }
.dp-lesson .lt-video iframe,
.dp-lesson .lt-video video,
.dp-lesson .lt-video .vhi-iframe { border-radius: 18px !important; }
.dp-lesson .lt-video .row { margin-left: 0 !important; margin-right: 0 !important; }
@media (max-width: 768px) {
  .dp-lesson .gc-main-content { padding: 0 16px !important; }
  .dp-lesson .lt-lesson-mission-block .lt-block-wrapper .container { padding: 22px 18px 24px !important; }
}

/* dp-fix-3: у карточки задания внутри висел отступ снизу 60px от .row-section */
.dp-lesson .lt-lesson-mission-block .row-section { margin: 0 !important; }

