

/* Start:/local/templates/ceotv/template_styles.css?177495039615615*/
body {
	display: block !important;
}

/* Общая стилизация скроллбара для всего сайта */
/* Стилизация для WebKit браузеров (Chrome, Safari, Edge) */
::-webkit-scrollbar {
	width: 8px;
	height: 8px;
}

::-webkit-scrollbar-track {
	background: #1a1d24;
	border-radius: 4px;
}

::-webkit-scrollbar-thumb {
	background: #3d4149;
	border-radius: 4px;
	transition: background 0.2s ease;
}

::-webkit-scrollbar-thumb:hover {
	background: #4d525a;
}

/* Стилизация скроллбара для Firefox */
html {
	scrollbar-width: thin;
	scrollbar-color: #3d4149 #1a1d24;
}

main {
	display: block;
	height: fit-content;
}

.bx-cstm-loader {
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background-color: #000;
	opacity: 0;
	top: 0;
	left: 0;
	transition: 0.4s opacity;
}

.bx-cstm-loader--relative {
	position: relative;
	width: 50px;
	height: 50px;
}

.loader {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background:
		radial-gradient(farthest-side, #ff5850 44%, #0000) top/4px 4px no-repeat,
		conic-gradient(#0000 30%, #ff5850);
	-webkit-mask: radial-gradient(farthest-side, #0000 calc(100% - 4px), #000 0);
	animation: spinner-ub 0.8s infinite linear;
}

.loader:before {
	background-color: rgba(255, 255, 255, .8)
}

@keyframes spinner-ub {
	100% {
		transform: rotate(1turn);
	}
}

.loader-container {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.bx-cstm-loader.animated {
	opacity: 0.7;
}

.empty-result {
	display: flex;
	flex-direction: column;
	gap: 32px;
	align-items: center;
	justify-content: center;
	padding: 50px 0;
	backdrop-filter: blur(20px);
	background: #0C0E12CC;

}

.catalog__detail-text {
	display: flex;
	gap: 18px;
	flex-direction: column;
}

.auth-header .logo {
	margin-bottom: 16px;
}

/* Toast Notifications */
.toast-container {
	position: fixed;
	top: 20px;
	right: 20px;
	z-index: 10000;
	display: flex;
	flex-direction: column;
	gap: 12px;
	max-width: 400px;
	pointer-events: none;
}

.toast {
	background: #0c111a;
	border: 1px solid #171b22;
	border-radius: 8px;
	padding: 16px 20px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
	display: flex;
	align-items: flex-start;
	gap: 12px;
	min-width: 300px;
	max-width: 400px;
	position: relative;
	overflow: hidden;
	pointer-events: auto;
	animation: toastSlideIn 0.3s ease-out;
	opacity: 0;
	transform: translateX(100%);
}

.toast.show {
	opacity: 1;
	transform: translateX(0);
}

.toast.error {
	border-left: 3px solid #ff5850;
}

.toast.success {
	border-left: 3px solid #4CAF50;
}

.toast.warning {
	border-left: 3px solid #ffa500;
}

.toast.info {
	border-left: 3px solid #2196F3;
}

.toast__icon {
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 2px;
}

.toast.error .toast__icon {
	color: #ff5850;
}

.toast.success .toast__icon {
	color: #4CAF50;
}

.toast.warning .toast__icon {
	color: #ffa500;
}

.toast.info .toast__icon {
	color: #2196F3;
}

.toast__content {
	flex: 1;
	color: #fff;
	font-size: 14px;
	line-height: 1.5;
}

.toast__close {
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: none;
	color: #85888e;
	cursor: pointer;
	padding: 0;
	transition: color 0.2s;
	margin-top: -2px;
}

.toast__close:hover {
	color: #fff;
}

.toast__progress {
	position: absolute;
	bottom: 0;
	left: 0;
	height: 3px;
	background: #ff5850;
	width: 100%;
	transform-origin: left;
	animation: toastProgress linear;
}

.toast.error .toast__progress {
	background: #ff5850;
}

.toast.success .toast__progress {
	background: #4CAF50;
}

.toast.warning .toast__progress {
	background: #ffa500;
}

.toast.info .toast__progress {
	background: #2196F3;
}

@keyframes toastSlideIn {
	from {
		opacity: 0;
		transform: translateX(100%);
	}

	to {
		opacity: 1;
		transform: translateX(0);
	}
}

@keyframes toastProgress {
	from {
		transform: scaleX(1);
	}

	to {
		transform: scaleX(0);
	}
}

@media (max-width: 640px) {
	.toast-container {
		top: 10px;
		right: 10px;
		left: 10px;
		max-width: none;
	}

	.toast {
		min-width: auto;
		max-width: none;
	}
}

.checkbox-group input[type="checkbox"] {
	z-index: 12;
}

.catalog__detail-article {
	gap: 32px;
}

.article-text {
	display: flex;
	flex-direction: column;
	gap: 1em;
}

.article-section ol,
.article-section ul {
	list-style: auto;
	padding-left: 18px;
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin: 12px 0;
}

.article-section ul {
	list-style-type: disc;
}

.article-section li {
	font-size: 18px;
	line-height: 1.2;
}

/* Обертка для таблицы */
.article-section {
	position: relative;
}

.article-section table {
	width: 100%;
	border-collapse: collapse;
	margin: 24px 0;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 8px;
	overflow: hidden;
	max-width: 100%;
	box-sizing: border-box;
	table-layout: auto;
	display: table;
}

/* Обертка для таблицы со скроллом (создается через JS) */
.table-scroll-wrapper {
	overflow-x: auto !important;
	overflow-y: hidden !important;
	-webkit-overflow-scrolling: touch;
	width: 100% !important;
	max-width: 100% !important;
	margin: 24px 0 !important;
	position: relative;
	box-sizing: border-box;
	/* Стили для скроллбара */
	scrollbar-width: thin;
	scrollbar-color: rgba(255, 255, 255, 0.3) rgba(255, 255, 255, 0.1);
}

/* Стили скроллбара для WebKit браузеров */
.table-scroll-wrapper::-webkit-scrollbar {
	height: 8px;
}

.table-scroll-wrapper::-webkit-scrollbar-track {
	background: rgba(255, 255, 255, 0.1);
	border-radius: 4px;
}

.table-scroll-wrapper::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, 0.3);
	border-radius: 4px;
}

.table-scroll-wrapper::-webkit-scrollbar-thumb:hover {
	background: rgba(255, 255, 255, 0.5);
}

.table-scroll-wrapper table {
	margin: 0 !important;
	min-width: 100% !important;
	width: max-content !important;
	display: table !important;
}

/* Обертка для таблицы со скроллом на мобильных */
@media screen and (max-width: 768px) {
	.article-section {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		width: 100%;
		max-width: 100%;
		position: relative;
	}

	.article-section table {
		display: table;
		width: max-content;
		min-width: 100%;
		margin: 24px 0;
		table-layout: auto;
	}

	/* Убеждаемся, что родительский контейнер не мешает */
	.catalog__detail-article,
	.article-text {
		overflow-x: visible;
		width: 100%;
		max-width: 100%;
	}
}

.article-section table th {
	background: rgba(255, 255, 255, 0.05);
	color: #f7f7f7;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	padding: 16px;
	text-align: left;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.article-section table td {
	color: #cecfd2;
	font-size: 16px;
	line-height: 1.5;
	padding: 16px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.article-section table tbody tr:last-child td {
	border-bottom: none;
}

.article-section table tbody tr:hover {
	background: rgba(255, 255, 255, 0.02);
}

@media screen and (max-width: 768px) {

	.article-section table th,
	.article-section table td {
		padding: 12px;
		font-size: 14px;
		white-space: nowrap;
	}
}

@media screen and (max-width: 540px) {
	.article-section table {
		margin: 24px 0;
	}

	.article-section table th,
	.article-section table td {
		padding: 10px 8px;
		font-size: 13px;
	}
}

.catalog__detail-text ol,
.catalog__detail-text ul {
	list-style: auto;
	padding-left: 18px;
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin: 12px 0;
}

.catalog__detail-text ul {
	list-style-type: disc;
}

.catalog__detail-text li {
	font-size: 16px;
	line-height: 1.2;
}

.profile__aside-link.active {
	background-color: #13161B;
	border-radius: 5px;
}

.end-discount {
	color: var(--colors-text-text-primary-900, #F7F7F7);
	/* Text sm/Regular */
	font-family: var(--Font-family-font-family-body, Inter);
	font-size: var(--Font-size-text-sm, 14px);
	font-style: normal;
	font-weight: 400;
	line-height: var(--Line-height-text-sm, 20px);
	/* 142.857% */
	padding: 2px 6px;
	border-radius: var(--radius-xs, 4px);
	background: var(--Colors-Background-bg-brand-solid, #FF5850);
}

.old-price {
	color: var(--colors-text-text-tertiary-600, #94979C);
	/* Display xs/Regular */
	font-family: var(--Font-family-font-family-display, Inter);
	font-size: var(--Font-size-display-xs, 24px);
	font-style: normal;
	font-weight: 400;
	line-height: var(--Line-height-display-xs, 32px);
	/* 133.333% */
	text-decoration-line: line-through;
}

.price-container {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.price-container .price-outer {
	display: flex;
	align-items: center;
	gap: 22px;
}

html .catalog__detail-content {
	gap: 32px;
}

.catalog__detail-chapters {
	color: var(--color-label);
	font-size: 16px;
	line-height: 30px;
}

.catalog__detail-chapter {
	padding: 30px 0 0 0;
}

li.catalog__detail-chapters-item {
	display: flex;
	gap: 0.3rem;
}

.chapters-time {
	cursor: pointer;
	min-width: 45px;
	transition: color 0.3s ease;
}

.chapters-time:hover {
	color: #FF5850;
}

.pagination {
	margin-top: 52px;
}

html .catalog__detail-info {
	padding: 32px;
	border-radius: var(--radius-2xl, 16px);
	background: var(--Colors-Background-bg-tertiary, #22262F);
	height: 100%;
	max-height: 612px;
	overflow-y: auto;
	overflow-x: hidden;
}

/* Стилизация скроллбара для WebKit браузеров (Chrome, Safari, Edge) */
html .catalog__detail-info::-webkit-scrollbar {
	width: 8px;
}

html .catalog__detail-info::-webkit-scrollbar-track {
	background: #1a1d24;
	border-radius: 4px;
}

html .catalog__detail-info::-webkit-scrollbar-thumb {
	background: #3d4149;
	border-radius: 4px;
	transition: background 0.2s ease;
}

html .catalog__detail-info::-webkit-scrollbar-thumb:hover {
	background: #4d525a;
}

/* Стилизация скроллбара для Firefox */
html .catalog__detail-info {
	scrollbar-width: thin;
	scrollbar-color: #3d4149 #1a1d24;
}

html .catalog__detail-chapter {
	padding-top: 32px;
}

.catalog__detail-chapter .catalog__detail-title {
	color: var(--colors-text-text-primary-900, #F7F7F7);
	margin-bottom: 8px;
	/* Text xl/Regular */
	font-family: var(--Font-family-font-family-body, Inter);
	font-size: var(--Font-size-text-xl, 20px);
	font-style: normal;
	font-weight: 400;
	line-height: var(--Line-height-text-xl, 30px);
	/* 150% */
}

html .catalog__detail-video {
	border-radius: 16px;
}

html .main__banner-title {
	line-height: 1.2;
}

@media(max-width: 768px) {
	.main__banner-slide {
		height: 560px !important
	}

	.main__banner-inner .swiper-pagination {
		text-align: left;
		display: flex;
	}

	html .main__banner-inner .swiper-pagination-bullet {
		height: 4px;
		width: 100%;
	}

	html .main__videos {
		margin-top: 64px;
	}

	html .swiper-pagination {
		bottom: -20px !important;
	}

	html .video-card__title {
		color: var(--colors-text-text-primary-900, #F7F7F7);
		font-size: var(--Font-size-text-lg, 18px);
		font-style: normal;
		font-weight: 400;
		line-height: 1.5;
	}

	html .subscription {
		padding: 0;
	}

	html .subscription__title {
		color: var(--Colors-Text-text-primary_on-brand, #FFF);
		font-size: var(--Font-size-display-xs, 24px);
		font-style: normal;
		font-weight: 400;
		line-height: 1.3;
		text-align: left;
	}

	.subscription__text p {
		color: var(--colors-text-text-secondary-700, #CECFD2);
		font-family: var(--Font-family-font-family-body, Inter);
		font-size: var(--Font-size-text-md, 16px);
		font-style: normal;
		font-weight: 400;
		line-height: var(--Line-height-text-md, 24px);
		/* 150% */
		text-align: left;
	}

	.subscription__btn {
		width: 100% !important
	}

	html .video-card__title {
		margin-bottom: 4px;
	}

	html .page__title {
		margin-bottom: 24px;
	}

	html .videos-grid {
		display: flex;
		flex-direction: column;
	}

	html .catalog__detail-info {
		max-height: none;
	}

	li.catalog__detail-chapters-item {
		gap: 16px;
	}

	html .article-text,
	html .article-text li {
		color: var(--colors-text-text-secondary-700, #CECFD2);
		font-size: var(--Font-size-text-md, 16px);
		font-style: normal;
		font-weight: 400;
		line-height: var(--Line-height-text-md, 24px);
		/* 150% */
	}

	html .article-heading {
		color: var(--colors-text-text-primary-900, #F7F7F7);
		font-style: normal;
		font-weight: 400;
		line-height: var(--Line-height-display-sm, 38px);
		/* 126.667% */
		margin-top: 0;
	}
}

.materials__access-denied {
	display: flex;
	gap: 30px;
	flex-direction: column;
}

main {
	overflow: hidden;
}

@media(max-width: 1200px) {
	html .catalog__detail-aside {
		flex-direction: column;
	}

	html .main__banner-tags {
		flex-wrap: wrap;
		gap: 6px 12px;
	}

	html .catalog__detail-article {
		max-width: calc(100vw - 40px);
	}
}

@media (max-width: 768px) {
	html .catalog__detail-info {
		padding: 16px;
	}
}

.text-empty_subscribe {
	display: flex;
	align-content: center;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	padding: 0 64px;
	z-index: 1;
}

.text-empty_subscribe h2 {
	overflow: hidden;
	padding: 0 0 8px 0;
	font-size: 30px;
	font-weight: 400;
	text-align: center;
}

.text-empty_subscribe p {
	font-size: 18px;
	font-weight: 400;
	text-align: center;
	color: #cecfd2;
}

.btn-empty_subscribe {
	display: flex;
	gap: 16px;
	justify-content: center;
	align-items: center;
}

.catalog__detail-article .block-blur {
	position: relative;
	max-height: 360px;
	overflow: hidden;
}

.catalog__detail-article .block-blur::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 220px;
	background: linear-gradient(180deg, rgba(12, 14, 18, 0) 0%, #0C0E12 100%);
	pointer-events: none;
}

.catalog__detail-article .block-subscribe {
	position: relative;
	z-index: 2;
	min-height: 220px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
	text-align: center;
	padding: 24px 16px 0;
}

.catalog__detail-article .block-subscribe .text-empty_subscribe h2 {
	color: #f7f7f7;
	font-size: 44px;
	line-height: 1.15;
	font-weight: 400;
	margin: 0 0 12px;
}

.catalog__detail-article .block-subscribe .text-empty_subscribe p {
	color: #cecfD2;
	font-size: 28px;
	line-height: 1.3;
	margin: 0 0 20px;
}

.catalog__detail-article .bonus-block {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
}

.catalog__detail-article .bonus {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #ff5850;
	color: #fff;
	border-radius: 999px;
	padding: 4px 10px;
	font-size: 12px;
	line-height: 1;
}

.catalog__detail-article .main__video-btn--secondary {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	min-height: 44px;
	padding: 0 20px;
	border-radius: 12px;
	background: #f7f7f7;
	color: #181d27;
	font-size: 20px;
	line-height: 1;
}

@media (max-width: 400px) {

	.text-empty_subscribe h2 {
		font-size: 16px;
		line-height: 24px;
	}
	.catalog__detail-article .block-subscribe .text-empty_subscribe h2{
		font-size: 16px;
		line-height: 24px;
		padding: 0 0 4px 0;
		margin: 0;
	}
	.text-empty_subscribe p {
		font-size: 14px;
	}
	.catalog__detail-article .block-subscribe .text-empty_subscribe p {
		font-size: 14px;
		margin: 0 0 32px;
	}
	.text-empty_subscribe{
		padding: 0 20px;
	}

	.empty-result {
		gap: 24px;
	}
	.btn-empty_subscribe {
		flex-wrap: wrap;
	}

	html .catalog__detail-video {
		height: 320px;
		width: 100%;
	}

}
/* End */
/* /local/templates/ceotv/template_styles.css?177495039615615 */
