/* Бейджи как второй ряд в levels-preview.html (класс .lvx) */

.lv-badge,
.lvx {
	--hex: polygon(50% 0%, 95% 25%, 95% 75%, 50% 100%, 5% 75%, 5% 25%);
	--lv: #9CA3AF;
	--cut: 11px;
	position: relative;
	display: block;
	width: 46px;
	height: 46px;
	flex-shrink: 0;
	isolation: isolate;
	box-sizing: border-box;
	overflow: visible;
}
.lvx--squircle,
.lv-badge--shape-squircle { --cut: 11px; }
.lvx--circle,
.lvx--beyond,
.lv-badge--shape-circle,
.lv-badge--shape-beyond { --cut: 50%; }
.lvx--hex,
.lv-badge--shape-hex { --cut: 0; }

.lvx__glow {
	position: absolute;
	inset: -10px;
	border-radius: 50%;
	background: radial-gradient(circle, color-mix(in srgb, var(--lv) 65%, transparent) 0%, transparent 68%);
	opacity: .42;
	filter: blur(4px);
	pointer-events: none;
	z-index: 0;
}
.lvx__rim {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(
		160deg,
		#fff 0%,
		color-mix(in srgb, var(--lv) 80%, #fff) 25%,
		var(--lv) 52%,
		color-mix(in srgb, var(--lv) 45%, #080808) 100%
	);
	border-radius: var(--cut);
	box-shadow:
		0 6px 14px color-mix(in srgb, var(--lv) 35%, transparent),
		0 1px 0 rgba(255,255,255,.45) inset;
}
.lvx--hex .lvx__rim {
	border-radius: 0;
	clip-path: var(--hex);
	box-shadow: none;
	filter: drop-shadow(0 6px 10px color-mix(in srgb, var(--lv) 40%, transparent));
}
.lvx__core {
	position: absolute;
	inset: 2px;
	z-index: 2;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--cut);
	background:
		radial-gradient(120% 80% at 30% 18%, rgba(255,255,255,.25), transparent 42%),
		linear-gradient(180deg, color-mix(in srgb, var(--lv) 35%, #14161c) 0%, #07080c 100%);
	color: #fff;
}
.lvx--hex .lvx__core {
	border-radius: 0;
	clip-path: var(--hex);
	inset: 2.5px;
}
.lvx--beyond .lvx__core {
	background:
		radial-gradient(120% 80% at 30% 18%, rgba(255,255,255,.4), transparent 42%),
		linear-gradient(180deg, #6d5514 0%, #0c0a06 100%);
}
.lvx__foil {
	position: absolute;
	inset: -40%;
	background: conic-gradient(
		from var(--spin, 0deg),
		color-mix(in srgb, var(--lv) 15%, transparent),
		#67e8f9 10%,
		color-mix(in srgb, var(--lv) 75%, #fff) 22%,
		#a78bfa 34%,
		#f0abfc 46%,
		#f9a8d4 55%,
		#fde68a 65%,
		#86efac 75%,
		#67e8f9 87%,
		color-mix(in srgb, var(--lv) 15%, transparent)
	);
	mix-blend-mode: overlay;
	opacity: .34;
	animation: none;
	pointer-events: none;
}
.lvx--beyond .lvx__foil { opacity: .55; }
.lvx__shine {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: linear-gradient(115deg, transparent 36%, rgba(255,255,255,.6) 48%, transparent 60%);
	background-size: 220% 100%;
	background-position: 48% 0;
	animation: none;
	mix-blend-mode: screen;
	opacity: .72;
}
.lvx__num {
	position: relative;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	font-family: "Arial Black", "Arial Bold", Impact, system-ui, sans-serif;
	font-weight: 900;
	font-size: 15px;
	letter-spacing: -0.05em;
	line-height: 1;
	color: #fff;
	text-shadow: 0 1px 0 rgba(0,0,0,.5), 0 0 8px color-mix(in srgb, var(--lv) 80%, transparent);
	transform: translateY(-1px);
}
.lvx--d4 .lvx__num { font-size: 11px; }
.lvx--d1 .lvx__num { font-size: 18px; }
.lvx__floor {
	position: absolute;
	left: 22%;
	right: 22%;
	bottom: 7px;
	height: 2px;
	border-radius: 2px;
	background: #fff;
	box-shadow: 0 0 8px var(--lv), 0 0 14px color-mix(in srgb, var(--lv) 60%, transparent);
	opacity: .9;
	z-index: 3;
}

@keyframes lvx-spin {
	to {
		--spin: 360deg;
		transform: rotate(360deg);
	}
}
@keyframes lvx-shine {
	0%, 28% { background-position: 140% 0; }
	58%, 100% { background-position: -40% 0; }
}
@property --spin {
	syntax: "<angle>";
	inherits: false;
	initial-value: 0deg;
}

.lvx--rank-15 .lvx__glow,
.lvx--rank-16 .lvx__glow,
.lvx--rank-17 .lvx__glow,
.lvx--rank-18 .lvx__glow,
.lvx--rank-19 .lvx__glow,
.lvx--rank-20 .lvx__glow {
	opacity: .55;
	filter: blur(5px);
}
.lvx--rank-21 .lvx__glow,
.lvx--rank-22 .lvx__glow,
.lvx--rank-23 .lvx__glow,
.lvx--rank-24 .lvx__glow,
.lvx--rank-25 .lvx__glow,
.lvx--rank-26 .lvx__glow,
.lvx--rank-27 .lvx__glow,
.lvx--rank-28 .lvx__glow,
.lvx--rank-29 .lvx__glow,
.lvx--rank-30 .lvx__glow {
	opacity: .7;
	filter: blur(6px);
}
.lvx--rank-29 .lvx__rim {
	box-shadow:
		0 0 8px rgba(255,215,80,.7),
		0 0 18px rgba(255,190,40,.45),
		0 6px 14px rgba(255,190,40,.4);
}
.lvx--rank-30 .lvx__rim {
	box-shadow:
		0 0 8px rgba(255,255,255,.9),
		0 0 18px rgba(255,220,120,.85),
		0 0 32px rgba(255,190,50,.65),
		0 6px 20px rgba(255,190,50,.5);
}
.lvx--rank-30 .lvx__num {
	text-shadow: 0 1px 0 #000, 0 0 8px #fff, 0 0 18px #ffd76a;
}

.lv-badge {
	margin: 6px auto 0;
	cursor: pointer;
	outline: none;
	z-index: 4;
	min-width: 0;
	vertical-align: middle;
}
.lv-badge--size-sm {
	display: inline-block;
	width: 35px;
	height: 35px;
	margin: 0 0 0 8px;
}
.lv-badge--size-sm .lvx__num,
.lv-badge--size-sm .lv-badge__num { font-size: 13px; }
.lv-badge--size-sm .lvx__floor,
.lv-badge--size-sm .lv-badge__floor { bottom: 5px; }
.lv-badge--size-lg {
	width: 52px;
	height: 52px;
	margin: 0;
}
.lv-badge--size-lg .lvx__num,
.lv-badge--size-lg .lv-badge__num { font-size: 16px; }
.lvx--tip {
	width: 56px;
	height: 56px;
	margin: 0 auto 8px;
	cursor: default;
}
.lvx--tip .lvx__num { font-size: 18px; }

/* Старый HTML (.lv-badge__face): рисуем фольгу псевдоэлементами, если нет .lvx__core */
.lv-badge:not(:has(.lvx__core))::before {
	content: "";
	position: absolute;
	inset: -10px;
	border-radius: 50%;
	background: radial-gradient(circle, color-mix(in srgb, var(--lv) 65%, transparent) 0%, transparent 68%);
	opacity: .42;
	filter: blur(4px);
	pointer-events: none;
	z-index: 0;
}
.lv-badge:not(:has(.lvx__core))::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	border-radius: var(--cut);
	background: linear-gradient(
		160deg,
		#fff 0%,
		color-mix(in srgb, var(--lv) 80%, #fff) 25%,
		var(--lv) 52%,
		color-mix(in srgb, var(--lv) 45%, #080808) 100%
	);
	box-shadow:
		0 6px 14px color-mix(in srgb, var(--lv) 35%, transparent),
		0 1px 0 rgba(255,255,255,.45) inset;
	pointer-events: none;
}
.lv-badge--shape-hex:not(:has(.lvx__core))::after {
	border-radius: 0;
	clip-path: var(--hex);
	box-shadow: none;
	filter: drop-shadow(0 6px 10px color-mix(in srgb, var(--lv) 40%, transparent));
}
.lv-badge__face {
	position: absolute;
	inset: 2px;
	z-index: 2;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--cut);
	background:
		radial-gradient(120% 80% at 30% 18%, rgba(255,255,255,.25), transparent 42%),
		linear-gradient(180deg, color-mix(in srgb, var(--lv) 35%, #14161c) 0%, #07080c 100%);
	color: #fff;
}
.lv-badge--shape-hex .lv-badge__face {
	border-radius: 0;
	clip-path: var(--hex);
	inset: 2.5px;
}
.lv-badge--shape-beyond .lv-badge__face {
	background:
		radial-gradient(120% 80% at 30% 18%, rgba(255,255,255,.4), transparent 42%),
		linear-gradient(180deg, #6d5514 0%, #0c0a06 100%);
}
.lv-badge__face::before {
	content: "";
	position: absolute;
	inset: -40%;
	background: conic-gradient(
		from var(--spin, 0deg),
		color-mix(in srgb, var(--lv) 15%, transparent),
		#67e8f9 10%,
		color-mix(in srgb, var(--lv) 75%, #fff) 22%,
		#a78bfa 34%,
		#f0abfc 46%,
		#f9a8d4 55%,
		#fde68a 65%,
		#86efac 75%,
		#67e8f9 87%,
		color-mix(in srgb, var(--lv) 15%, transparent)
	);
	mix-blend-mode: overlay;
	opacity: .34;
	animation: none;
	pointer-events: none;
}
.lv-badge__face::after {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: linear-gradient(115deg, transparent 36%, rgba(255,255,255,.6) 48%, transparent 60%);
	background-size: 220% 100%;
	background-position: 48% 0;
	animation: none;
	mix-blend-mode: screen;
	opacity: .72;
}
.lv-badge__num {
	position: relative;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	font-family: "Arial Black", "Arial Bold", Impact, system-ui, sans-serif;
	font-weight: 900;
	font-size: 15px;
	letter-spacing: -0.05em;
	line-height: 1;
	color: #fff;
	text-shadow: 0 1px 0 rgba(0,0,0,.5), 0 0 8px color-mix(in srgb, var(--lv) 80%, transparent);
	transform: translateY(-1px);
}
.lv-badge--digits-1 .lv-badge__num { font-size: 18px; }
.lv-badge--digits-4 .lv-badge__num { font-size: 11px; }
.lv-badge__floor {
	position: absolute;
	left: 22%;
	right: 22%;
	bottom: 7px;
	height: 2px;
	border-radius: 2px;
	background: #fff;
	box-shadow: 0 0 8px var(--lv), 0 0 14px color-mix(in srgb, var(--lv) 60%, transparent);
	opacity: .9;
	z-index: 3;
}

@media (prefers-reduced-motion: reduce) {
	.lvx__foil,
	.lvx__shine { animation: none; }
}

.lv-tip {
	display: flex;
	flex-direction: column;
	align-items: center;
	position: absolute;
	left: 50%;
	top: calc(100% + 8px);
	bottom: auto;
	transform: translateX(-50%) translateY(-6px);
	min-width: 140px;
	width: max-content;
	max-width: 220px;
	padding: 12px 14px 13px;
	border-radius: 12px;
	background: var(--ui-bg, #fff);
	border: 1px solid var(--bdc, rgba(0,0,0,.08));
	box-shadow: 0 12px 32px rgba(0,0,0,.28);
	color: var(--tt, #161616);
	text-align: center;
	white-space: nowrap;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity .18s ease, transform .18s ease, visibility .18s;
	z-index: 80;
}
.lv-tip::after {
	content: "";
	position: absolute;
	bottom: 100%;
	top: auto;
	left: 50%;
	margin-left: -6px;
	border: 6px solid transparent;
	border-bottom-color: var(--ui-bg, #fff);
}
.lv-tip__title {
	display: block;
	font-size: 13px;
	font-weight: 700;
	color: var(--tt);
	margin: 0 0 8px;
}
.lv-tip__pill {
	display: inline-block;
	padding: 3px 10px;
	border-radius: 999px;
	background: var(--lv);
	color: #fff;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .02em;
	line-height: 1.35;
}
.lv-tip__pill--dark { color: #1a1408; }
.lv-tip--bar {
	min-width: 200px;
	max-width: 260px;
	white-space: normal;
}
.lv-tip__bar {
	display: block;
	height: 7px;
	margin: 10px 0 6px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--lv) 16%, var(--bg-2, #eee));
	overflow: hidden;
}
.lv-tip__bar-fill {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: var(--lv);
	box-shadow: 0 0 8px color-mix(in srgb, var(--lv) 50%, transparent);
}
.lv-tip__xp,
.lv-tip__next {
	display: block;
	font-size: 11px;
	line-height: 1.35;
	color: var(--tt-2);
	white-space: normal;
}
.lv-tip__next {
	margin-top: 4px;
	font-weight: 600;
	color: var(--tt);
}
.lv-badge:hover .lv-tip,
.lv-badge:focus-visible .lv-tip {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}
.lv-badge.is-open { z-index: 100000; }
.lv-badge.is-open .lv-tip {
	opacity: 1;
	visibility: visible;
	position: fixed;
	transform: none;
	z-index: 100001;
	top: auto;
	bottom: auto;
	white-space: normal;
	pointer-events: none;
}
.lv-badge.is-open .lv-tip::after { display: none; }

.commenty,
.comment-item,
.comment-item__main,
.header__avatar-wrap {
	overflow: visible;
}
/* Пузырь не через margin-left (на стене при ≤760px он 50px при колонке 70px — наезд на ранг/бейдж). */
.comment-item,
.profile-wall-comment,
#profile-wall .comment-item,
.js-comm:has(> .commenty),
.ac-comments .comment-item,
.clans-wall.ac-comments .comment-item,
.diary-layout-root #ac-comments .comment-item {
	display: flex !important;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 10px;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}
#profile-wall .comments-tree-item,
#profile-wall .profile-wall-tree-item {
	display: flow-root;
}
.comment-item:has(.lv-badge.is-open),
.comment-item:has(.js-rank-tip.is-open),
.js-comm:has(.lv-badge.is-open),
.js-comm:has(.js-rank-tip.is-open),
.header__avatar-wrap:has(.lv-badge.is-open) {
	position: relative;
	z-index: 100000;
}
.commenty,
.ac-comments .commenty,
.clans-wall.ac-comments .commenty,
.diary-layout-root #ac-comments .commenty {
	float: none !important;
	flex: 0 0 70px;
	flex-grow: 0;
	flex-shrink: 0;
	width: 70px;
	max-width: 70px;
	min-width: 0;
	position: relative;
	z-index: 1;
	overflow: visible;
	box-sizing: border-box;
}
@media (max-width: 767px) {
	.commenty,
	.ac-comments .commenty,
	.clans-wall.ac-comments .commenty,
	.diary-layout-root #ac-comments .commenty,
	#profile-wall .commenty,
	.profile-wall-comment .commenty {
		flex: 0 0 50px !important;
		width: 50px !important;
		max-width: 50px !important;
	}
}
.comment-item__main,
.comment-item__main.full-text-com,
#profile-wall .comment-item__main,
#profile-wall .comment-item__main.full-text-com,
.ac-comments .comment-item__main,
.clans-wall.ac-comments .comment-item__main,
.diary-layout-root #ac-comments .comment-item__main,
.js-comm:has(> .commenty) > .comment-item__main {
	float: none;
	margin-left: 0 !important;
	flex: 1 1 0%;
	min-width: 0;
	width: auto;
	max-width: none;
	position: relative;
	/* Выше .commenty (z-index:1), иначе панель реакций уходит под аватар */
	z-index: 2;
}
/* Подсказки ранга/уровня с аватара — снова поверх текста комментария */
.commenty:has(.lv-badge.is-open),
.commenty:has(.js-rank-tip.is-open),
.ac-comments .commenty:has(.lv-badge.is-open),
.ac-comments .commenty:has(.js-rank-tip.is-open),
.clans-wall.ac-comments .commenty:has(.lv-badge.is-open),
.clans-wall.ac-comments .commenty:has(.js-rank-tip.is-open),
.diary-layout-root #ac-comments .commenty:has(.lv-badge.is-open),
.diary-layout-root #ac-comments .commenty:has(.js-rank-tip.is-open) {
	z-index: 5;
}
.commenty > .lv-badge {
	display: block;
	width: 46px;
	height: 46px;
	margin: 6px auto 0;
}
.commenty .lv-badge.is-open,
.usp__name-row .lv-badge.is-open,
.header__avatar-wrap .lv-badge.is-open {
	z-index: 100000;
}
.header__avatar-wrap {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-left: 16px !important;
	flex-shrink: 0;
}
.header__avatar-btn {
	position: relative;
	display: inline-flex;
	flex-shrink: 0;
}
.header__avatar-wrap .header__btn-login {
	margin-left: 0;
}
.header .alert_module {
	margin-left: 10px;
	margin-right: 0;
	width: 35px;
	max-width: 35px;
	flex: 0 0 35px;
}
.header .alert_module-icon {
	float: none;
	margin-left: 0;
}
.header__avatar-wrap .lvx__glow {
	inset: -3px;
	opacity: .32;
}
.comment-item__meta,
.ac-comments .comment-item__header .comment-item__meta,
.clans-wall.ac-comments .comment-item__header .comment-item__meta {
	gap: 4px 6px;
}
.comment-item__meta > *,
.comment-item__meta .group-icon,
.comment-item__meta .clans-author-tag,
.comment-item__meta .comm-author,
.comment-item__meta .comm-authorvip,
.comment-item__meta .comm-authorguru,
.comment-item__meta .comm-authorlord,
.comment-item__meta .comm-authorpremium,
.comment-item__meta .comm-authorvet,
.comment-item__meta .comm-authorgl,
.comment-item__meta .streak,
.comment-item__meta .amd-major,
.comment-item__meta .amd-titles,
.comment-item__meta .amd-badge,
.comment-item__meta .amd-title-tip,
.comment-item__meta .comm-nom,
.comment-item__meta .rank,
.comment-item__meta .comm-count-row,
.comment-item__meta .comm-status-thumb {
	margin: 0 !important;
}
.comment-item__meta .clans-author-tag {
	flex-shrink: 0;
}
.comment-item__meta .comm-author {
	margin-left: 0;
}
.comment-item__meta:has(.comm-authorpremium) .group-icon {
	display: none !important;
}
.comment-item__meta .comm-authorpremium {
	display: inline-flex;
	align-items: center;
	margin-left: 0 !important;
	margin-bottom: 0;
}
.comment-item__meta .comm-authorpremium img {
	padding: 0;
	margin: 0 6px 0 8px;
	height: 12px;
	width: auto;
	display: block;
}
.comment-item__meta .comm-authorpremium .rank-tip,
.comm-authorpremium .rank-tip-anchor .rank-tip {
	display: none !important;
}
#profile-wall .comm-authorpremium,
.profile-wall-comment .comm-authorpremium {
	margin-left: 0 !important;
}
.usp__name-row .lv-badge,
.usp__name-row .lvx {
	display: inline-block;
	width: 46px;
	height: 46px;
	margin: 0 0 0 8px;
	vertical-align: middle;
}
.header__avatar-wrap .lv-badge {
	display: inline-block;
	width: 35px;
	height: 35px;
	margin: 0;
}

.lv-widget {
	--lv: #9CA3AF;
	position: relative;
	margin: 0 0 18px;
	max-width: none;
	width: 100%;
	min-height: 148px;
	padding: 14px 16px 15px;
	border-radius: 12px;
	background: var(--ui-bg, var(--bg));
	border: 1px solid var(--bdc);
	box-sizing: border-box;
}
.lv-widget__top {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 10px;
	min-height: 52px;
}
.lv-widget .lv-badge--size-lg {
	flex: 0 0 52px;
}
.lv-widget__level {
	font-size: 16px;
	font-weight: 800;
	color: var(--tt);
	line-height: 1.2;
}
.lv-widget__xp-total {
	font-size: 13px;
	font-weight: 600;
	opacity: .6;
	margin-left: 6px;
}
.lv-widget__rank {
	margin-top: 2px;
	font-size: 13px;
	font-weight: 600;
	color: var(--lv);
}
.lv-widget__bar {
	height: 8px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--lv) 16%, var(--bg-2, #eee));
	overflow: hidden;
}
.lv-widget__bar-fill {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: var(--lv);
	box-shadow: 0 0 8px color-mix(in srgb, var(--lv) 50%, transparent);
}
.lv-widget__foot {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-top: 6px;
}
.lv-widget__xp,
.lv-widget__next {
	margin-top: 0;
	font-size: 12px;
	color: var(--tt-2);
}
.lv-widget__next {
	font-weight: 600;
	color: var(--tt);
	margin-left: auto;
	text-align: right;
}

.dt-is-active .lv-tip {
	background: linear-gradient(180deg, #222230 0%, #16161f 100%);
	border-color: rgba(255,255,255,.1);
	color: #f0f0f5;
	box-shadow: 0 12px 32px rgba(0,0,0,.45);
}
.dt-is-active .lv-tip::after {
	border-bottom-color: #16161f;
	border-top-color: transparent;
}
.dt-is-active .lv-tip__title { color: #f0f0f5; }
.dt-is-active .lv-widget {
	background: var(--ui-bg-darker, #1b2935);
	border-color: var(--bdc);
}

.st-widget {
	--st: #f97316;
	position: relative;
	margin: 0 0 18px;
	max-width: none;
	width: 100%;
	min-height: 148px;
	padding: 14px 16px 15px;
	border-radius: 12px;
	background: var(--ui-bg, var(--bg, #fff));
	border: 1px solid var(--bdc, rgba(0,0,0,.1));
	box-sizing: border-box;
}
.st-widget__top {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 10px;
	min-height: 52px;
}
.st-widget__flame {
	flex: 0 0 52px;
	width: 52px;
	height: 52px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.st-widget__flame i {
	font-size: 30px;
	line-height: 1;
	color: var(--st);
	filter: drop-shadow(0 0 8px rgba(249, 115, 22, .45));
}
.st-widget__level {
	font-size: 16px;
	font-weight: 800;
	color: var(--tt, #222);
	line-height: 1.2;
}
.st-widget__rank {
	margin-top: 2px;
	font-size: 13px;
	font-weight: 600;
	color: var(--st);
}
.st-widget__bar {
	height: 8px;
	border-radius: 999px;
	background: rgba(249, 115, 22, .16);
	overflow: hidden;
}
.st-widget__bar-fill {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: var(--st);
}
.st-widget__foot {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-top: 6px;
}
.st-widget__days,
.st-widget__next,
.st-widget__record {
	margin-top: 0;
	font-size: 12px;
	color: var(--tt-2, #666);
}
.st-widget__next {
	font-weight: 600;
	color: var(--tt, #222);
	margin-left: auto;
	text-align: right;
}
.st-widget__record {
	margin-top: 6px;
}
.dt-is-active .st-widget {
	background: var(--ui-bg-darker, #1b2935);
	border-color: var(--bdc, rgba(255,255,255,.1));
}
@media (max-width: 767px) {
	.commenty .comm-premium,
	.commenty .comm-group-mark.comm-premium {
		font-size: 8px !important;
	}
}

/* FAQ button & popup */
.lv-widget__faq-btn,
.st-widget__faq-btn {
	position: absolute;
	top: 10px;
	right: 10px;
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 24px !important;
	height: 24px !important;
	min-width: 24px !important;
	max-width: 24px !important;
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	border-radius: 50% !important;
	background: var(--lv, #6366f1) !important;
	color: #fff !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	box-sizing: border-box;
	cursor: pointer;
	opacity: .7;
	box-shadow: none !important;
	white-space: nowrap;
}
.st-widget__faq-btn {
	background: var(--st, #f97316) !important;
}
.lv-widget__faq-btn:hover,
.st-widget__faq-btn:hover { opacity: 1; }

.lv-faq { display: none; }
.lv-faq--open { display: block; }
.lv-faq__overlay {
	position: fixed; inset: 0; background: rgba(0,0,0,.5);
	z-index: 9998;
}
.lv-faq__body {
	position: fixed; top: 50%; left: 50%;
	transform: translate(-50%, -50%);
	width: 92%; max-width: 520px; max-height: 80vh;
	overflow-y: auto; padding: 24px;
	background: var(--ui-bg, #fff); color: var(--tt, #222);
	border-radius: 16px; box-shadow: 0 12px 40px rgba(0,0,0,.25);
	z-index: 9999;
}
.dt-is-active .lv-faq__body {
	background: var(--ui-bg-darker, #1b2935);
	color: var(--tt, #e2e8f0);
}
.lv-faq__close {
	position: absolute; top: 12px; right: 14px;
	background: none; border: none; font-size: 22px;
	color: var(--tt, #222); cursor: pointer; line-height: 1;
}
.lv-faq__title {
	margin: 0 0 16px; font-size: 18px; font-weight: 800;
}
.lv-faq__section { margin-bottom: 14px; font-size: 14px; line-height: 1.5; }
.lv-faq__section ul { margin: 6px 0 0 18px; padding: 0; }
.lv-faq__section li { margin-bottom: 4px; }
.lv-faq__table-wrap { max-height: 280px; overflow-y: auto; margin-top: 8px; }
.lv-faq__table { width: 100%; border-collapse: collapse; font-size: 13px; }
.lv-faq__table th, .lv-faq__table td {
	padding: 6px 8px; text-align: left; vertical-align: middle;
	border-bottom: 1px solid var(--bdc, rgba(0,0,0,.08));
}
.lv-faq__table th { font-weight: 700; position: sticky; top: 0; background: var(--ui-bg, #fff); z-index: 1; }
.dt-is-active .lv-faq__table th { background: var(--ui-bg-darker, #1b2935); }
.lv-faq__rank-cell {
	display: flex;
	align-items: center;
	gap: 8px;
}
.lv-faq__table .lv-badge,
.lv-faq__table .lvx {
	margin: 0;
	flex: 0 0 46px;
	width: 46px;
	height: 46px;
}
.st-faq__flame {
	flex: 0 0 28px !important;
	width: 28px !important;
	height: 28px !important;
}
.st-faq__flame i { font-size: 16px !important; }
.lv-faq__rank-name { font-weight: 600; }

/* Tech-fantasy бейджи рангов 31–40 */
.lvx--crest {
	--lv2: var(--lv);
	--lv3: var(--lv);
	overflow: visible;
}
.lvx--crest .lvx__ambient {
	position: absolute;
	inset: 14%;
	border-radius: 50%;
	background: var(--lv);
	filter: blur(10px);
	opacity: .22;
	animation: none;
	z-index: 0;
	pointer-events: none;
}
.lvx--crest .lvx__halo {
	position: absolute;
	inset: -6%;
	border-radius: 50%;
	background: radial-gradient(circle, transparent 47%, color-mix(in srgb, var(--lv) 28%, transparent) 58%, transparent 70%);
	opacity: .65;
	animation: none;
	z-index: 0;
	pointer-events: none;
}
.lvx--crest .lvx__crest {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	overflow: visible;
	z-index: 1;
	pointer-events: none;
}
.lvx--crest .lvx__crest-shadow { fill: rgba(0,0,0,.48); }
.lvx--crest .lvx__core {
	inset: 17%;
	width: auto;
	height: auto;
	border-radius: 0;
	clip-path: polygon(50% 0, 91% 24%, 91% 76%, 50% 100%, 9% 76%, 9% 24%);
	background: linear-gradient(145deg, color-mix(in srgb, var(--lv) 19%, #11131a) 0%, #0c0d13 40%, #090a0f 100%);
	box-shadow:
		inset 0 0 0 1px color-mix(in srgb, var(--lv) 54%, transparent),
		inset 0 0 12px rgba(0,0,0,.75);
	z-index: 3;
}
.lvx--crest .lvx__core::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(color-mix(in srgb, var(--lv) 20%, transparent) 1px, transparent 1px),
		linear-gradient(90deg, color-mix(in srgb, var(--lv) 20%, transparent) 1px, transparent 1px);
	background-size: 7px 7px;
	opacity: .12;
	pointer-events: none;
}
.lvx--crest .lvx__facets {
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 1;
}
.lvx--crest .lvx__facets i {
	position: absolute;
	inset: 0;
}
.lvx--crest .lvx__facets i:nth-child(1) {
	background: linear-gradient(145deg, color-mix(in srgb, var(--lv) 27%, transparent), transparent 52%);
	clip-path: polygon(0 0, 58% 0, 30% 52%, 0 73%);
}
.lvx--crest .lvx__facets i:nth-child(2) {
	background: linear-gradient(265deg, color-mix(in srgb, var(--lv2) 24%, transparent), transparent 60%);
	clip-path: polygon(100% 0, 100% 72%, 50% 45%, 66% 0);
}
.lvx--crest .lvx__facets i:nth-child(3) {
	background: linear-gradient(25deg, color-mix(in srgb, var(--lv3) 22%, transparent), transparent 63%);
	clip-path: polygon(18% 100%, 100% 100%, 100% 54%, 53% 66%);
}
.lvx--crest .lvx__prism {
	position: absolute;
	inset: 0;
	background: linear-gradient(100deg, transparent 10%, rgba(255,85,150,.08) 24%, rgba(255,233,110,.08) 34%, rgba(96,255,190,.08) 44%, rgba(100,210,255,.11) 55%, rgba(192,115,255,.10) 67%, transparent 83%);
	background-size: 220% 100%;
	opacity: .75;
	animation: none;
	z-index: 2;
	mix-blend-mode: screen;
	pointer-events: none;
}
.lvx--crest .lvx__shine {
	position: absolute;
	inset: -30% -90%;
	background: linear-gradient(110deg, transparent 36%, rgba(255,255,255,.03) 42%, rgba(255,255,255,.34) 49%, color-mix(in srgb, var(--lv3) 38%, transparent) 53%, transparent 61%);
	transform: translateX(0);
	animation: none;
	mix-blend-mode: screen;
	z-index: 3;
	pointer-events: none;
}
.lvx--crest .lvx__scan {
	position: absolute;
	left: 10%;
	right: 10%;
	height: 1px;
	top: 20%;
	background: linear-gradient(90deg, transparent, var(--lv), var(--lv3), transparent);
	box-shadow: 0 0 4px color-mix(in srgb, var(--lv) 65%, transparent);
	opacity: .35;
	animation: none;
	z-index: 2;
	pointer-events: none;
}
.lvx--crest .lvx__borderline {
	position: absolute;
	inset: 18%;
	clip-path: polygon(50% 0, 91% 24%, 91% 76%, 50% 100%, 9% 76%, 9% 24%);
	filter: drop-shadow(0 0 3px var(--lv));
	z-index: 4;
	pointer-events: none;
}
.lvx--crest .lvx__borderline::after {
	content: "";
	position: absolute;
	inset: 1px;
	clip-path: inherit;
	background: linear-gradient(145deg, rgba(255,255,255,.55), transparent 22%, transparent 67%, color-mix(in srgb, var(--lv) 52%, transparent));
	opacity: .46;
}
.lvx--crest .lvx__num {
	z-index: 6;
	font-size: 12px;
	letter-spacing: -.07em;
	transform: none;
}
.lvx--crest .lvx__num small {
	font-size: .7em;
	margin-left: 1px;
	letter-spacing: -.04em;
	color: color-mix(in srgb, var(--lv) 65%, white);
}
.lvx--crest.lvx--dk .lvx__num { font-size: 11px; }
.lvx--crest.lv-badge--size-sm .lvx__num { font-size: 9px; }
.lvx--crest.lv-badge--size-lg .lvx__num,
.lvx--crest.lvx--tip .lvx__num { font-size: 14px; }
.lvx--crest .lvx__particles {
	position: absolute;
	inset: 0;
	z-index: 8;
	pointer-events: none;
}
.lvx--crest .lvx__particles span {
	position: absolute;
	width: 2px;
	height: 2px;
	border-radius: 50%;
	background: var(--lv3);
	box-shadow: 0 0 5px var(--lv3);
	opacity: 0;
	animation: none;
}
.lvx--crest .lvx__particles span:nth-child(1) { left: 18%; top: 64%; animation-delay: .4s; }
.lvx--crest .lvx__particles span:nth-child(2) { left: 79%; top: 55%; animation-delay: 1.7s; }
.lvx--crest .lvx__particles span:nth-child(3) { left: 39%; top: 19%; animation-delay: 2.8s; }
.lvx--crest .lvx__particles span:nth-child(4) { left: 66%; top: 78%; animation-delay: 3.5s; }
.lv-badge--size-sm.lvx--crest .lvx__particles,
.lv-badge--size-sm.lvx--crest .lvx__scan { display: none; }
.lvx--rank-37.lvx--crest .lvx__core,
.lvx--rank-38.lvx--crest .lvx__core,
.lvx--rank-39.lvx--crest .lvx__core,
.lvx--rank-40.lvx--crest .lvx__core {
	box-shadow:
		inset 0 0 0 1px color-mix(in srgb, var(--lv) 72%, transparent),
		inset 0 0 14px rgba(0,0,0,.72),
		0 0 8px color-mix(in srgb, var(--lv) 28%, transparent);
}
.lvx--rank-40.lvx--crest .lvx__core {
	background: linear-gradient(145deg, #241c12, #0b0c12 44%, #08090c);
}
.lvx--rank-40.lvx--crest .lvx__num {
	text-shadow: 0 1px 0 #000, 0 0 7px #fff, 0 0 14px #ffd974;
}
.lvx--rank-40.lvx--crest .lvx__ambient { opacity: .32; filter: blur(12px); }

@keyframes lvx-breathe {
	0%, 100% { opacity: .16; transform: scale(.95); }
	50% { opacity: .32; transform: scale(1.06); }
}
@keyframes lvx-halo {
	0%, 100% { opacity: .38; transform: scale(.98); }
	50% { opacity: .76; transform: scale(1.05); }
}
@keyframes lvx-prism {
	0%, 100% { background-position: 120% 0; opacity: .45; }
	50% { background-position: -35% 0; opacity: .9; }
}
@keyframes lvx-scan {
	0%, 15% { top: 16%; opacity: 0; }
	35% { opacity: .42; }
	65% { top: 76%; opacity: .28; }
	80%, 100% { top: 76%; opacity: 0; }
}
@keyframes lvx-spark {
	0%, 18% { opacity: 0; transform: translate(0, 0) scale(.6); }
	28% { opacity: .9; }
	72% { opacity: .35; }
	100% { opacity: 0; transform: translate(4px, -12px) scale(.2); }
}
@keyframes lvx-crest-shine {
	0%, 25% { transform: translateX(-45%); }
	55%, 100% { transform: translateX(45%); }
}
@media (prefers-reduced-motion: reduce) {
	.lvx--crest .lvx__ambient,
	.lvx--crest .lvx__halo,
	.lvx--crest .lvx__prism,
	.lvx--crest .lvx__shine,
	.lvx--crest .lvx__scan,
	.lvx--crest .lvx__particles span { animation: none; }
}

/* Без анимаций: крутящийся foil/@property и блики жрали ядро на лентах комментов. */
.lv-badge,
.lv-badge *,
.lv-badge *::before,
.lv-badge *::after,
.lvx,
.lvx *,
.lvx *::before,
.lvx *::after {
	animation: none !important;
}
.lvx__foil,
.lvx__shine,
.lvx__particles,
.lvx__scan,
.lv-badge__face::before,
.lv-badge__face::after {
	display: none !important;
}
.lv-tip .lvx,
.lv-tip .lvx--tip {
	display: none !important;
}
