:root {
	/* Палитра DiSC и уровни прозрачности для текста, фонов, диаграмм и карточек типов. */
	--D: 255, 85, 85;
	--I: 255, 200, 70;
	--S: 100, 190, 130;
	--C: 90, 160, 190;

	--opacity-normal: 1;
	--opacity-mute: 0.5;
	--opacity-back: 0.3;
	--opacity-back-mute: 0.1;

	--back-D-mute: rgba(var(--D), var(--opacity-back));
	--back-I-mute: rgba(var(--I), var(--opacity-back));
	--back-S-mute: rgba(var(--S), var(--opacity-back));
	--back-C-mute: rgba(var(--C), var(--opacity-back));
}

html,
.uk-card-default{color: #3c3c3c;}

/* Верхнее меню и служебные элементы интерфейса. */
.tm-menu > .uk-navbar-dropdown {
	top: 5px !important;
	right: 28px !important;
	left: auto !important;
	padding: 5px !important;
	box-shadow: none;
	background: transparent;
	width: auto;
}
.tm-menu > .uk-navbar-toggle {min-height: 50px;}
@media (max-width: 640px) {
	.tm-menu > .uk-navbar-toggle {
		margin-left: 14px;
	}
	.tm-menu .uk-navbar-dropdown-nav > li.uk-margin-right {
		margin-right: 10px !important;
	}
}

.tm-point{
	width: 22px;
	height: 22px;
}
.tm-text-shadow{text-shadow: rgba(0, 0, 0, 0.6) 6px 6px 16px;}

/* input:invalid:required {border: 1px solid #cdcdcd;} */

/* Базовая адаптация UIkit-карточек и кнопок под визуальный стиль проекта. */
.uk-card {border: 1px solid #e5e5e5; border-radius: 14px;}
.uk-card-body{
	padding-bottom: 30px;
	padding-top: 30px;
}
.uk-button {border-radius: 8px;}

#mod-form .uk-modal-dialog,
#mod-form-personal .uk-modal-dialog,
#mod-form-vocation .uk-modal-dialog,
#mod-form-corporate .uk-modal-dialog{
	background: transparent;
}

#mod-corporate-preview .uk-modal-dialog {
	width: 900px;
}

td.tm-table-reg,
.tm-table-reg {border-right: solid 1px #c7c7c7;}

/* Цветовые классы DiSC: текст, фон, приглушенный фон и верхняя граница. */
.color-D { color: rgb(var(--D)); }
.color-D-mute { color: rgba(var(--D), var(--opacity-mute)); }

.back-D { background-color: rgb(var(--D)); }
.back-D-mute,
.back-grad-D { background-color: rgba(var(--D), var(--opacity-back-mute)); }
.border-D { border-top: 2px solid rgb(var(--D)); }

.color-I { color: rgb(var(--I)); }
.color-I-mute { color: rgba(var(--I), var(--opacity-mute)); }
.back-I { background-color: rgb(var(--I)); }
.back-I-mute,
.back-grad-I { background-color: rgba(var(--I), var(--opacity-back-mute)); }
.border-I { border-top: 2px solid rgb(var(--I)); }

.color-S { color: rgb(var(--S)); }
.color-S-mute { color: rgba(var(--S), var(--opacity-mute)); }
.back-S { background-color: rgb(var(--S)); }
.back-S-mute,
.back-grad-S { background-color: rgba(var(--S), var(--opacity-back-mute)); }
.border-S { border-top: 2px solid rgb(var(--S)); }

.color-C { color: rgb(var(--C)); }
.color-C-mute { color: rgba(var(--C), var(--opacity-mute)); }
.back-C { background-color: rgb(var(--C)); }
.back-C-mute,
.back-grad-C { background-color: rgba(var(--C), var(--opacity-back-mute)); }
.border-C { border-top: 2px solid rgb(var(--C)); }

/* Градиенты */
.back-grad-DC {background: linear-gradient(to bottom, rgba(var(--D), var(--opacity-back)), rgba(var(--C), var(--opacity-back)));}
.back-grad-DI {background: linear-gradient(to right, rgba(var(--D), var(--opacity-back)), rgba(var(--I), var(--opacity-back)));}
.back-grad-ID {background: linear-gradient(to left, rgba(var(--I), var(--opacity-back)), rgba(var(--D), var(--opacity-back)));}
.back-grad-IS {background: linear-gradient(to bottom, rgba(var(--I), var(--opacity-back)), rgba(var(--S), var(--opacity-back)));}
.back-grad-SI {background: linear-gradient(to top, rgba(var(--S), var(--opacity-back)), rgba(var(--I), var(--opacity-back)));}
.back-grad-SC {background: linear-gradient(to left, rgba(var(--S), var(--opacity-back)), rgba(var(--C), var(--opacity-back)));}
.back-grad-CS {background: linear-gradient(to right, rgba(var(--C), var(--opacity-back)), rgba(var(--S), var(--opacity-back)));}
.back-grad-CD {background: linear-gradient(to top, rgba(var(--C), var(--opacity-back)), rgba(var(--D), var(--opacity-back)));}
.back-grad-DS {background: linear-gradient(to bottom, rgba(var(--D), var(--opacity-back)), rgba(var(--S), var(--opacity-back)));}
.back-grad-IC {background: linear-gradient(to bottom, rgba(var(--I), var(--opacity-back)), rgba(var(--C), var(--opacity-back)));}
.back-grad-SD {background: linear-gradient(to top, rgba(var(--S), var(--opacity-back)), rgba(var(--D), var(--opacity-back)));}
.back-grad-CI {background: linear-gradient(to top, rgba(var(--C), var(--opacity-back)), rgba(var(--I), var(--opacity-back)));}

/* Общие контейнеры результата и круговых диаграмм DiSC. */
ul.result {border: 1px solid #e5e5e5; background-color: #fff;}

.disc-business-hero {
	position: relative;
	overflow: hidden;
	background: radial-gradient(circle at 15% 18%, rgba(var(--S), .22), transparent 30%),
		radial-gradient(circle at 85% 16%, rgba(var(--C), .22), transparent 32%),
		radial-gradient(circle at 60% 90%, rgba(var(--D), .18), transparent 28%),
		linear-gradient(135deg, #f7fbff 0%, #ffffff 52%, #f8fbf7 100%);
}

.disc-business-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(0, 0, 0, .035) 1px, transparent 1px),
		linear-gradient(90deg, rgba(0, 0, 0, .035) 1px, transparent 1px);
	background-size: 42px 42px;
	-webkit-mask-image: linear-gradient(to bottom, #000 15%, transparent 92%);
	mask-image: linear-gradient(to bottom, #000 15%, transparent 92%);
	pointer-events: none;
}

.disc-business-hero > * {
	position: relative;
}

.personal-section-menu > li > a,
.personal-section-menu-mobile a {
	min-height: 48px;
	color: #555;
}

.personal-section-menu > li > a:hover,
.personal-section-menu-mobile a:hover {
	color: #1e87f0;
}

.personal-section-menu-mobile .uk-grid-small {
	min-width: 150px;
}

/* Вкладки рекомендаций: активный стиль выделяется цветной рамкой без синей заливки UIkit pill. */
.disc-recommendation-tabs > * > a {
	border: 1px solid transparent;
	border-radius: 4px;
	padding: 4px 10px;
	background: #fff;
}
.disc-recommendation-tabs > .uk-active > a {
	border-color: var(--disc-tab-color);
	background: #fff;
}

.result-disk {
	width: 380px;
	height: 380px;
	padding: 0;
}
.compare-disk {
	width: 600px;
	height: 600px;
	padding: 0;
}
.tm-name,
.tm-name-compare {
	border-radius: 4px;
	display: block;
	background: rgba(255, 255, 255, 0.6);
	padding: 0px 4px;
	box-shadow: 0 5px 5px rgba(0,0,0,.3);
}
.tm-name-compare {
	font-size: 1.1rem;
}

/* Декоративное перекрытие секций главной страницы бумажной текстурой. */
.uk-section-overlap {
	background-image: none
}

.uk-section-overlap.uk-section::after,
.uk-section-overlap > .uk-section::after {
	content: "";
	display: block;
	height:120px;
	background-image: url("../img/border-paper-muted.png");

}

.uk-section-overlap + [class * =uk-section], :is(:has( > .uk-section-overlap:last-child)) + * > :not([class * =uk-section]):first-child + :not([class * =uk-section]) + [class * =uk-section], :is(:has( > .uk-section-overlap:last-child)) + * > :not([class * =uk-section]):first-child + [class * =uk-section], :is(:has( > .uk-section-overlap:last-child)) + * > [class * =uk-section]:first-child {
	position:relative;
}

.uk-section-overlap + [class * =uk-section]::before,
:is(:has( > .uk-section-overlap:last-child)) + * > :not([class * =uk-section]):first-child + :not([class * =uk-section]) + [class * =uk-section]::before,
:is(:has( > .uk-section-overlap:last-child)) + * > :not([class * =uk-section]):first-child + [class * =uk-section]::before,
:is(:has( > .uk-section-overlap:last-child)) + * > [class * =uk-section]:first-child::before {
	content: "";
	display: block;
	position: absolute;
	top: -120px;
	left: 0;
	right: 0;
	height: 120px;
	background-repeat:repeat-x;
}

.uk-section-overlap + [class * =uk-section],
:is(:has( > .uk-section-overlap:last-child)) + * > :not([class * =uk-section]):first-child + :not([class * =uk-section]) + [class * =uk-section],
:is(:has( > .uk-section-overlap:last-child)) + * > :not([class * =uk-section]):first-child + [class * =uk-section],
:is(:has( > .uk-section-overlap:last-child)) + * > [class * =uk-section]:first-child {
	position:relative;
	background-size:cover;
}

.list-disc-quest > .uk-accordion-title {font-size: 1.6rem !important;}
ul#tm-resultType > li{padding-left: 10px !important;}

/* Первый экран главной: видео закрепляется UIkit Sticky, а круг и тексты остаются под управлением UIkit Parallax. */
.disc-hero {
	overflow: hidden;
}
.disc-hero-video {
	z-index: 0 !important;
	width: 100%;
	min-height: 100vh;
}
.disc-hero-video video {
	width: 100%;
	height: 100%;
}
.uk-grid-margin.disc-hero-intro {
	z-index: 40 !important;
	position: relative;
	margin-top: -100vh !important;
}
.disc-hero-circle {
	top: -20px;
	z-index: 0;
	will-change: transform, filter, opacity;
}
.disc-hero-circle .el-image {
	z-index: 10;
	transform: translateY(-50%);
	max-width: 60vw;
}
.disc-hero-title {
	top: 120px;
	z-index: 10;
	will-change: transform, filter, opacity;
}
.disc-hero-copy {
	z-index: 45 !important;
	position: relative;
}
.disc-hero-copy [uk-parallax] {
	will-change: transform, filter, opacity;
}
.disc-hero-subtitle {
	z-index: 20;
	margin-bottom: 10vh;
}
.disc-hero-brand {
	z-index: 30;
	margin-bottom: 10vh;
}
@media (min-width: 960px) {
	.disc-hero-brand {
		height: 20vh;
	}
}
@media (max-width: 640px) {
	.disc-hero-video {
		min-height: 100svh;
	}
	.uk-grid-margin.disc-hero-intro {
		margin-top: -100svh !important;
		transform: translateY(-22vh);
	}
	.disc-hero-copy {
		transform: translateY(-8vh);
	}
	.disc-hero-circle .el-image {
		width: 60vw;
		max-width: 240px;
	}
	.disc-hero-title {
		font-size: clamp(5rem, 22vw, 8rem);
		line-height: 1;
	}
	.disc-hero-copy {
		margin-top: -28vh;
		padding-top: 0;
	}
}

/* Карточки типов теста */
#test-type-cards .uk-card:hover {
	cursor: pointer !important;
}
.uk-card-hover {
	transition: transform 0.18s ease-out, box-shadow 0.18s ease-out;
}
.uk-card-hover:hover {
	transform: translateY(-8px);
}

.uk-card-primary{
	background:
		radial-gradient(circle at 78% 22%, rgba(0, 212, 255, 0.45), transparent 60%), 
		linear-gradient(135deg, #4565c5 0%, #103bc4 52%, #09298a 100%);
}
.uk-button-primary {
	background:
		radial-gradient(circle at 78% 22%, rgba(0, 212, 255, 0.45), transparent 60%),
		linear-gradient(135deg, #4565c5 0%, #103bc4 35%, #09298a 55%, #6682d8 75%, #103bc4 100%);
}
.uk-button-secondary {
	background:
		radial-gradient(circle at 30% 70%, rgba(196, 196, 196, 0.45), transparent 60%),
		linear-gradient(135deg, #555555 0%, #808080 35%, #000000 55%, #787878 75%, #595959 100%);
}

/* Светлая primary-кнопка на тёмном фоне */
.uk-light .uk-button-primary {
	position: relative;
	z-index: 0;
	overflow: hidden;
	isolation: isolate;
	background:
		radial-gradient(circle at 78% 22%, rgba(222, 249, 255, 0.45), transparent 60%),
		linear-gradient(135deg, #c7d5ff 0%, #ffffff 35%, #a7bdff 55%, #eef3ff 75%, #8faaff 100%);
}

.uk-light .uk-button-primary::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	background: linear-gradient(110deg, transparent 20%, rgba(255, 255, 255, 0.7) 50%, transparent 80%);
	transform: translateX(-125%);
	transition: transform .42s ease-out;
}

.uk-light .uk-button-primary:hover::before,
.uk-light .uk-button-primary:focus::before {
	transform: translateX(125%);
}

.uk-button-default {
	background-image: linear-gradient(
		120deg,
		transparent 0%,
		transparent 35%,
		rgba(30, 135, 240, 0.14) 50%,
		transparent 65%,
		transparent 100%
	);
	background-size: 220% 100%;
	background-position: 100% 50%;
	transition: background-position .35s ease, box-shadow .25s ease, transform .15s ease;
}

.uk-light .uk-button-default {
	background-image: linear-gradient(
		120deg,
		transparent 0%,
		transparent 35%,
		rgba(255, 255, 255, 0.2) 50%,
		transparent 65%,
		transparent 100%
	);
}

.uk-button-default:hover,
.uk-button-default:focus {
	background-position: 0% 50%;
}

.uk-button-default:active {
	transform: translateY(4px);
}

.uk-button-primary,
.uk-button-secondary {
	background-size: 180% 180%;
	background-position: 0% 50%;
	transition: background-position .35s ease, box-shadow .25s ease, transform .15s ease;
}

.uk-button-primary:hover,
.uk-button-primary:focus,
.uk-button-secondary:hover,
.uk-button-secondary:focus {background-position: 100% 50%;}

.uk-light .uk-button-primary:hover,
.uk-light .uk-button-primary:focus {
	background-position: 100% 50%;
}

.uk-button-primary:active,
.uk-button-secondary:active {transform: translateY(4px);}

.uk-button-primary:disabled,
.uk-button-primary[disabled],
.uk-button-secondary:disabled,
.uk-button-secondary[disabled],
.uk-button-primary:disabled:hover,
.uk-button-primary[disabled]:hover,
.uk-button-secondary:disabled:hover,
.uk-button-secondary[disabled]:hover,
.uk-button-primary:disabled:focus,
.uk-button-primary[disabled]:focus,
.uk-button-secondary:disabled:focus,
.uk-button-secondary[disabled]:focus {
	background: #f8f8f8;
	background-position: 0% 50%;
	color: #999;
	border-color: #e5e5e5;
	box-shadow: none;
	transform: none;
	cursor: not-allowed;
	opacity: 1;
}

.uk-button-primary:disabled:active,
.uk-button-primary[disabled]:active,
.uk-button-secondary:disabled:active,
.uk-button-secondary[disabled]:active {
	transform: none;
}

.uk-button-default:disabled,
.uk-button-default[disabled],
.uk-button-default:disabled:hover,
.uk-button-default[disabled]:hover,
.uk-button-default:disabled:focus,
.uk-button-default[disabled]:focus,
.uk-button-default:disabled:active,
.uk-button-default[disabled]:active {
	background-image: none;
	box-shadow: none;
	transform: none;
}

.disc-platform-step {
	width: 100%;
	min-height: 330px;
}

.disc-platform-step-image {
	display: block;
	width: min(100%, 192px);
	aspect-ratio: 1;
	object-fit: contain;
}

.disc-platform-step-copy-top {
	margin-bottom: 20px;
}

.disc-corporate-hero-circle {
	display: block;
	width: 100px;
	height: 100px;
	object-fit: contain;
}

@media (max-width: 639px) {
	.disc-corporate-hero {
		min-height: 680px;
	}

	.disc-platform-step {
		min-height: 0;
	}

	.disc-platform-step-copy-top {
		margin-top: 20px;
		margin-bottom: 0;
	}

	.disc-corporate-hero-circle {
		width: 72px;
		height: 72px;
	}

	.disc-corporate-hero-layout {
		position: relative;
	}

	.disc-corporate-hero-circle-wrap {
		position: absolute;
		top: 0;
		right: 0;
		width: 72px;
		padding-left: 0 !important;
	}

	.disc-corporate-hero-copy h1 {
		padding-right: 82px;
	}
}
/* Бэкграунд */
.disc-section-blue {
	position: relative;
	overflow: hidden;
	background:radial-gradient(circle at 18% 22%, rgba(92, 113, 255, 0.46), transparent 32%), radial-gradient(circle at 78% 22%, rgba(0, 212, 255, .35), transparent 34%), linear-gradient(135deg, #080b14 0%, #101936 52%, #080b14 100%)
}

.disc-section-blue:before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: linear-gradient(rgba(255, 255, 255, .045) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .045) 1px, transparent 1px);
	background-size: 44px 44px;
	mask-image:linear-gradient(to bottom, #000 20%, transparent 90%);
	pointer-events: none;
}

.disc-feature-bg {background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);}
.disc-feature-bg-accent {background: linear-gradient(135deg, #ffffff 0%, #eef7ff 100%);}

.disc-price-card {
	background-image: url('../img/site/back-card-default.svg');
	background-repeat: no-repeat;
	background-position: top center;
	background-size: 100% auto;
}

.disc-plans-gear {
	z-index: 0;
	pointer-events: none;
	opacity: .28;
	filter: brightness(.72) saturate(1.1);
}

.disc-corporate-cta-text {
	pointer-events: none;
}

.target-card-01 {background-image: url('../img/target/target-01.jpg');}
.target-card-02 {background-image: url('../img/target/target-02.jpg');}
.target-card-03 {background-image: url('../img/target/target-03.jpg');}
.target-card-04 {background-image: url('../img/target/target-04.jpg');}
.target-card-05 {background-image: url('../img/target/target-05.jpg');}

/* Интерактивный демо-блок DiSC на главной: круг из 4 кнопок и демо-линейная диаграмма. */
.disc-preview-disk {
	width: 360px;
	max-width: 360px;
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	grid-template-areas:
		"D I"
		"C S";
	line-height: 0;
}
.disc-preview-part {
	position: relative;
	display: block;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
	line-height: 0;
}
.disc-preview-part-D {grid-area: D;}
.disc-preview-part-I {grid-area: I;}
.disc-preview-part-S {grid-area: S;}
.disc-preview-part-C {grid-area: C;}
.disc-preview-part img {
	display: block;
	width: 100%;
	max-width: none;
}
.disc-preview-part-hover,
.disc-preview-disk-text {
	position: absolute;
	inset: 0;
}
.disc-preview-part-hover {
	opacity: 0;
	transition: opacity 0.25s ease;
}
.disc-preview-part:hover .disc-preview-part-hover,
.disc-preview-part.uk-active .disc-preview-part-hover {
	opacity: 1;
}
.disc-preview-part:focus-visible {
	outline: 2px solid #1e87f0;
	outline-offset: 2px;
	z-index: 3;
}
.disc-preview-disk-text {
	width: 100%;
	height: auto;
	pointer-events: none;
	z-index: 2;
}
@media (max-width: 639px) {
	.disc-preview-disk {
		width: min(100%, 360px);
	}
}

/* Единый внешний вид всплывающих сообщений UIkit notification. */
.uk-notification {
	width: min(520px, calc(100vw - 30px));
}
.uk-notification-message {
	border-radius: 4px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.16);
	color: #333;
	font-size: 1rem;
	line-height: 1.45;
}
.uk-notification-message-success {
	background: #edfbf6;
	color: #333;
}
.uk-notification-message-warning {
	background: #fff6e5;
	color: #333;
}
.uk-notification-message-danger {
	background: #fff1f0;
	color: #333;
}

#disc-cookie-consent {
	opacity: 0.92;
}

/* Статус подписки в таблице корпоративных клиентов. */
#corporateRequestsTable .corporate-status-pending {
	background-color: #fff8e8;
}
#corporateRequestsTable .corporate-status-active {
	background-color: #edf9f4;
}
#corporateRequestsTable .corporate-status-expired {
	background-color: #fff1f0;
}
