/**
 * Тема N2E: M02 Quiet Cyan
 * Перекрытие для десктопа — раскладка (min-width / левое меню) без изменений.
 *
 * ROLLBACK: закомментировать <link> в index.php + html/content.php;
 * убрать #n2eThemeToggle + JS/n2e_m02_theme.js + boot-скрипт в head.
 *
 * Cyan умеренно: левая рамка активного меню, underline фокуса, ячейка сегодня, активные вкладки.
 * Тема через html[data-n2e-theme=light|dark] + переключатель в шапке (не ОС).
 */

html,
html[data-n2e-theme="light"] {
	--m02-bg: #ffffff;
	--m02-text: #2a2e33;
	--m02-muted: #4b5563;
	--m02-label: #3d4654;
	--m02-line: #d5dae0;
	--m02-panel: #ffffff;
	--m02-input-bg: transparent;
	--m02-cyan: #6eb8c4;
	--m02-cyan-soft: rgba(110, 184, 196, 0.12);
	--m02-hover: rgba(0, 0, 0, 0.04);
	--m02-unread-row: rgba(55, 62, 72, 0.08);
	--m02-unread-bar: #8b949e;
	--m02-selected: rgba(0, 0, 0, 0.06);
	--m02-overlay: rgba(0, 0, 0, 0.45);
	/* Галочки сообщений: темнее мягкого cyan, чтобы читались на белых / cyan-soft пузырях */
	--m02-tick: #4a5560;
	--m02-tick-read: #157a8a;
	--m02-font-ui: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--m02-font-input: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	/* Единые токены подписи поля + пустого состояния (настройки / админ / списки)
	 * Классы: .n2e-profile-k / .n2e-field-label  → подписи
	 *          .n2e-empty-state                   → «У Вас пока нет…»
	 * Менять токены здесь — не оверрайдами на каждый экран. */
	--n2e-label-size: 0.6rem;
	--n2e-label-weight: 600;
	--n2e-label-tracking: 0.05em;
	--n2e-label-color: var(--m02-label);
	--n2e-empty-size: 0.84rem;
	--n2e-empty-color: var(--m02-muted);
	/* Тихие кнопки действий + чипы папок галереи
	 * Классы: .blbutton, .n2e-msg-quiet-btn, .n2e-group-btn, .n2e-ug-btn,
	 *          .button-change-pass-profile, .n2e-ug-folder-chip
	 * Размер менять ТОЛЬКО ЗДЕСЬ — модули держат раскладку/цвет, не padding/font. */
	--n2e-btn-height: 30px;
	--n2e-btn-pad-x: 12px;
	--n2e-btn-font: 0.8rem;
	--n2e-btn-weight: 500;
	--n2e-btn-tracking: 0;
	--n2e-btn-radius: 8px;
	--n2e-btn-line: 1.2;
}

html[data-n2e-theme="dark"] {
	--m02-bg: #111418;
	--m02-text: #e6e8eb;
	--m02-muted: #a8b0ba;
	--m02-label: #b6bec8;
	--m02-line: #2a3038;
	--m02-panel: #181c22;
	--m02-input-bg: transparent;
	--m02-cyan: #7ec8d4;
	--m02-cyan-soft: rgba(126, 200, 212, 0.14);
	--m02-hover: rgba(255, 255, 255, 0.05);
	--m02-unread-row: rgba(160, 168, 176, 0.10);
	--m02-unread-bar: #6a7380;
	--m02-selected: rgba(255, 255, 255, 0.08);
	--m02-overlay: rgba(0, 0, 0, 0.65);
	--m02-tick: #a8b0ba;
	--m02-tick-read: #7ec8d4;
	color-scheme: dark;
}
html,
html[data-n2e-theme="light"] {
	color-scheme: light;
}

.n2e-header-left {
	position: absolute;
	left: 12px;
	top: 0;
	bottom: 0;
	height: auto;
	transform: none;
	z-index: 45;
	display: flex;
	align-items: center;
	gap: 12px;
	pointer-events: none;
	overflow: visible;
	box-sizing: border-box;
}
.header.n2e-has-empty-bd .n2e-header-left {
	top: 0;
	bottom: auto;
	height: 40px;
	transform: none;
}
.n2e-header-left .n2e-theme-toggle {
	pointer-events: auto;
	margin: 0;
}
.n2e-header-left .n2e-mobile-nav-btn {
	pointer-events: auto;
}
.n2e-theme-toggle {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	position: static;
	left: auto;
	top: auto;
	transform: none;
	z-index: 45;
	margin: 0;
	padding: 0;
	font-family: var(--m02-font-ui);
	font-size: 0;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 0;
	color: var(--m02-muted);
	background: transparent;
	border: 1px solid var(--m02-line);
	border-radius: 8px;
	cursor: pointer;
	box-shadow: none;
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 28px;
	min-width: 28px;
	max-width: 28px;
	height: 28px;
	min-height: 28px;
	max-height: 28px;
}
.n2e-theme-toggle-ico {
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
	width: 18px;
	height: 18px;
}
.n2e-theme-toggle-ico svg {
	display: block;
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}
.n2e-theme-toggle::-moz-focus-inner {
	border: 0;
	padding: 0;
}
.n2e-theme-toggle:hover,
.n2e-theme-toggle:focus {
	color: var(--m02-cyan);
	border-color: var(--m02-cyan);
	outline: none;
}

/* Водяной знак Zitar — тихая подпись, только если проект включён */
.n2e-zitar-mark {
	display: flex;
	align-items: baseline;
	justify-content: center;
	margin: 0;
	padding: 0 0 1px;
	font-family: var(--m02-font-ui);
	font-size: 0.95rem;
	font-weight: 700;
	font-style: italic;
	letter-spacing: 0.04em;
	line-height: 1;
	height: auto;
	min-height: 0;
	color: var(--m02-cyan);
	opacity: 0.38;
	text-shadow:
		0 0 6px rgba(110, 184, 196, 0.35),
		0 0 12px rgba(110, 184, 196, 0.18);
	user-select: none;
	pointer-events: none;
	white-space: nowrap;
	box-sizing: border-box;
}
/* Admin 3: сама надпись Zitar — переключатель стенда */
.n2e-zitar-mark.is-stand-switch {
	pointer-events: auto;
	cursor: pointer;
	opacity: 0.55;
}
.n2e-zitar-mark.is-stand-switch:hover {
	opacity: 0.85;
}
.n2e-zitar-mark[hidden] {
	display: none !important;
}
html[data-n2e-theme="dark"] .n2e-zitar-mark {
	opacity: 0.42;
	text-shadow:
		0 0 7px rgba(126, 200, 212, 0.4),
		0 0 14px rgba(126, 200, 212, 0.2);
}
html[data-n2e-theme="dark"] .n2e-zitar-mark.is-stand-switch {
	opacity: 0.58;
}

/* Меню стенда у метки Zitar (Admin 3) */
.n2e-zitar-stand-menu-bg {
	position: fixed;
	inset: 0;
	z-index: 12040;
	margin: 0;
	padding: 0;
	border: 0;
	background: rgba(8, 16, 22, 0.45);
	cursor: default;
}
.n2e-zitar-stand-menu-bg[hidden] {
	display: none !important;
}
.n2e-zitar-stand-menu {
	position: fixed;
	z-index: 12050;
	min-width: 148px;
	max-width: min(260px, calc(100vw - 16px));
	padding: 6px;
	margin: 0;
	border: 1px solid var(--m02-line);
	border-radius: 10px;
	background: var(--m02-panel);
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.18);
	box-sizing: border-box;
	pointer-events: auto;
}
.n2e-zitar-stand-menu[hidden] {
	display: none !important;
}
.n2e-zitar-stand-item {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
	width: 100%;
	margin: 0;
	padding: 8px 12px 8px 10px;
	border: 1px solid transparent;
	border-left: 3px solid transparent;
	border-radius: 8px;
	background: transparent;
	color: var(--m02-text);
	font-family: var(--m02-font-ui);
	font-size: 0.84rem;
	font-weight: 600;
	line-height: 1.25;
	text-align: left;
	cursor: pointer;
	box-sizing: border-box;
}
.n2e-zitar-stand-item:hover:not([disabled]) {
	border-color: transparent;
	border-left-color: rgba(110, 184, 196, 0.45);
	color: var(--m02-cyan);
	background: var(--m02-hover);
}
.n2e-zitar-stand-item.is-active {
	color: var(--m02-cyan);
	background: var(--m02-hover);
	border-left-color: var(--m02-cyan);
}
.n2e-zitar-stand-item[disabled] {
	opacity: 0.45;
	cursor: not-allowed;
}

html {
	background: var(--m02-bg);
}
body {
	background: var(--m02-bg);
	color: var(--m02-text);
	font-family: var(--m02-font-ui);
	/* Скролл страницы — у .middle (см. boot CSS в index.php), не у body */
	overflow: hidden;
}
#content:not(.n2e-is-hidden),
#formregauth {
	flex: 1 1 auto;
	min-height: 0;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}
#formregauth {
	overflow-x: hidden;
	overflow-y: auto;
}
#content.n2e-is-hidden {
	display: none !important;
}
.middle {
	flex: 1 1 auto;
	min-height: 0;
	height: 0;
	width: 100%;
	max-width: 100%;
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior-x: none;
	box-sizing: border-box;
	/* Иначе при появлении/исчезновении вертикального скролла скачет ширина контента
	 * (Показатели свёрнуто/развёрнуто и т.п.). Не на html/body — только у scrollport. */
	scrollbar-gutter: stable;
}
.wrapper {
	background: var(--m02-bg);
	min-width: 0 !important;
	width: 100%;
	max-width: 100% !important;
	height: 100%;
	max-height: 100%;
	min-height: 0;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
}
.header,
.footer {
	min-width: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box;
	overflow: visible;
	flex: 0 0 auto;
}
.header {
	background: var(--m02-panel);
	border-top: 1px solid var(--m02-line);
	border-bottom: 1px solid var(--m02-line);
	box-shadow: none;
	overflow: visible;
	position: relative;
	box-sizing: border-box;
	/* Над фиксированным .left-sidebar */
	z-index: 35;
}
.header.n2e-has-empty-bd {
	padding-top: 40px;
}
.logo {
	position: absolute;
	left: 50%;
	top: 0;
	bottom: 0;
	height: auto;
	margin: 0;
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	box-sizing: border-box;
	z-index: 36;
}
.header.n2e-has-empty-bd .logo {
	top: 0;
	bottom: auto;
	height: 40px;
}
.logo p,
.logo-text {
	margin: 0;
	padding: 0;
	line-height: 1;
	display: flex;
	align-items: center;
}
.emptyBirthday {
	width: fit-content;
	max-width: calc(100% - 16px);
	margin-left: auto;
	margin-right: auto;
	color: var(--m02-text) !important;
	border-color: rgba(127, 220, 232, 0.45) !important;
	background: rgba(127, 220, 232, 0.1) !important;
	font-size: 0.74rem !important;
	font-weight: 500 !important;
	line-height: 1.25 !important;
	font-family: var(--m02-font-ui) !important;
	letter-spacing: 0.01em !important;
	padding: 3px 14px !important;
}
.emptyBirthday:hover,
.emptyBirthday:focus {
	border-color: var(--m02-cyan) !important;
	background: rgba(127, 220, 232, 0.16) !important;
}
html[data-n2e-theme="light"] .emptyBirthday {
	color: #3d5263 !important;
	border-color: rgba(91, 158, 185, 0.4) !important;
	background: rgba(91, 158, 185, 0.1) !important;
}
.logo,
.logo p,
.logo-text {
	color: var(--m02-text);
}
.logo:hover {
	color: var(--m02-cyan);
}
.footer,
.footer a,
.afooter {
	color: var(--m02-muted);
	border-color: var(--m02-line);
}

.userbutton {
	background: transparent !important;
	border-left: 2px solid transparent;
	border-radius: 0;
	color: var(--m02-text);
	box-shadow: none;
	font-family: var(--m02-font-ui);
}
.userbutton .n2e-nav-ico {
	opacity: 0.72;
	color: var(--m02-muted);
}
.userbutton:hover {
	background: var(--m02-hover) !important;
	color: var(--m02-text);
}
.userbutton:hover .n2e-nav-ico {
	opacity: 1;
	color: var(--m02-cyan);
}
.userbuttonActive {
	background: transparent !important;
	border-left-color: var(--m02-cyan);
	color: var(--m02-cyan) !important;
}
.userbuttonActive .n2e-nav-ico {
	opacity: 1;
	color: var(--m02-cyan);
}
.userbuttonDisabled,
.userbuttonDisabled:hover {
	color: var(--m02-muted) !important;
	background: transparent !important;
}
.userbuttonDisabled .n2e-nav-ico {
	opacity: 0.4;
	color: var(--m02-muted);
}

/*
 * Колонка левого меню: одна заливка на всю высоту окна.
 * Fixed — не зависит от высоты .middle / float / flex.
 * Шапка (z 35) и подвал (z 40) сверху; цвет доходит до них.
 */
.left-sidebar {
	position: fixed !important;
	left: 0;
	top: 0;
	bottom: 0;
	width: 168px;
	margin: 0 !important;
	float: none !important;
	padding: 56px 0 48px;
	box-sizing: border-box;
	text-align: left;
	background: var(--m02-bg) !important;
	border-right: 1px solid var(--m02-line);
	box-shadow: none;
	z-index: 30;
	overflow-x: hidden;
	overflow-y: auto;
	min-height: 0 !important;
}
/* Выше шапка, когда показан баннер дня рождения */
body:has(.header.n2e-has-empty-bd) .left-sidebar {
	padding-top: 84px;
}
html[data-n2e-theme="dark"] .left-sidebar {
	box-shadow: none;
}

/*
 * Правый rail — зеркало left-sidebar: top/bottom 0, контент с padding.
 * Шапка/подвал выше по z. Скролл rail — overlay (без своей узкой полосы справа).
 */
.right-sidebar.n2e-rail-on {
	display: block !important;
	visibility: visible !important;
	pointer-events: auto !important;
	position: fixed !important;
	left: auto !important;
	right: 0 !important;
	top: 0 !important;
	bottom: 0 !important;
	width: 168px !important;
	margin: 0 !important;
	float: none !important;
	padding: 56px 8px 48px !important;
	box-sizing: border-box;
	z-index: 28 !important;
	overflow-x: hidden;
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: var(--m02-line) transparent;
	background: var(--m02-bg) !important;
	border-left: 1px solid var(--m02-line);
	box-shadow: none;
	min-height: 0 !important;
}
body:has(.header.n2e-has-empty-bd) .right-sidebar.n2e-rail-on {
	padding-top: 84px !important;
}
body:has(.right-sidebar.n2e-rail-on) .header {
	z-index: 50 !important;
}
body:has(.right-sidebar.n2e-rail-on) .footer {
	z-index: 50 !important;
}
/* При открытом rail — поля слева/справа; при сендвиче rail скрыт — без правого поля */
@media (min-width: 721px) {
	body:has(.right-sidebar.n2e-rail-on) .zitar_planning,
	body:has(.right-sidebar.n2e-rail-on) .zitar_indicators {
		margin-left: 180px !important;
		margin-right: 180px !important;
		width: calc(100% - 360px) !important;
		max-width: calc(100% - 360px) !important;
		min-width: 0 !important;
		box-sizing: border-box !important;
	}
	body:has(.right-sidebar.n2e-rail-on) .zitar_indicators {
		contain: inline-size !important;
		overflow-x: clip !important;
	}
	html.n2e-narrow body:has(.right-sidebar.n2e-rail-on) .zitar_planning,
	html.n2e-narrow body:has(.right-sidebar.n2e-rail-on) .zitar_indicators {
		margin-right: 0 !important;
		width: auto !important;
		max-width: none !important;
		contain: none !important;
		overflow-x: visible !important;
	}
}
.n2e-rail {
	display: flex;
	flex-direction: column;
	gap: 10px;
	min-width: 0;
}
.n2e-rail-sec-cap {
	margin: 0 0 6px;
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--m02-cyan);
	line-height: 1.3;
}
.n2e-rail-metric-cap {
	margin: 0;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--m02-cyan);
	line-height: 1.35;
}
.n2e-rail-metric-period {
	margin: 2px 0 8px;
	font-size: 0.78rem;
	color: var(--m02-muted);
	line-height: 1.3;
}
.n2e-rail-card {
	display: block;
	width: 100%;
	margin: 0 0 6px;
	padding: 7px 8px;
	border: 1px solid var(--m02-line);
	border-radius: 8px;
	background: transparent;
	box-sizing: border-box;
	text-align: left;
}
.n2e-rail-card--shipment {
	border-left: 3px solid var(--m02-cyan, #2aa8b8);
}
.n2e-rail-card--reception {
	border-left: 3px solid #d4a017;
}
.n2e-rail-card-title {
	display: block;
	font-size: 0.82rem;
	font-weight: 600;
	color: var(--m02-text);
	line-height: 1.25;
	word-break: break-word;
}
.n2e-rail-card-time {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 4px;
	margin-top: 2px;
	font-size: 0.75rem;
	color: var(--m02-muted);
	line-height: 1.3;
}
.n2e-rail-card-hour {
	font-variant-numeric: tabular-nums;
	font-weight: 600;
	color: var(--m02-muted);
}
.n2e-rail-card-dot {
	color: var(--m02-muted);
	opacity: 0.7;
}
.n2e-rail-card-kind {
	font-weight: 700;
}
.n2e-rail-card-kind.is-shipment {
	color: var(--m02-cyan, #2aa8b8);
}
.n2e-rail-card-kind.is-reception {
	color: #e0b84a;
}
/* Специфичность выше button.blbutton — иначе height 30px !important остаётся */
aside.right-sidebar button.blbutton.n2e-rail-files-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 5px 0 0 !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	flex: 0 0 auto !important;
	width: auto !important;
	min-width: 0 !important;
	height: 22px !important;
	min-height: 22px !important;
	max-height: 22px !important;
	padding: 0 8px !important;
	font-size: 0.68rem !important;
	line-height: 1.2 !important;
	border-radius: 6px !important;
	white-space: nowrap;
}
.n2e-rail-card-files {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	margin-top: 5px;
}
.n2e-rail-file-chip {
	display: inline-block;
	max-width: 100%;
	padding: 1px 5px;
	border: 1px solid var(--m02-line);
	border-radius: 4px;
	font-size: 0.65rem;
	line-height: 1.35;
	color: var(--m02-muted);
	text-decoration: none;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	pointer-events: auto;
	cursor: pointer;
	box-sizing: border-box;
}
a.n2e-rail-file-chip:hover {
	color: var(--m02-cyan);
	border-color: var(--m02-cyan);
}
.n2e-rail-file-chip--more {
	cursor: default;
	pointer-events: none;
}
.n2e-rail-empty {
	margin: 0;
	font-size: 0.78rem;
	color: var(--m02-muted);
	line-height: 1.4;
}
.n2e-rail-rank {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.n2e-rail-rank-row {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 6px;
	padding: 5px 6px;
	border-radius: 6px;
	box-sizing: border-box;
}
.n2e-rail-rank-name {
	min-width: 0;
	font-size: 0.8rem;
	font-weight: 600;
	color: var(--m02-text);
	line-height: 1.25;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.n2e-rail-rank-val {
	flex: 0 0 auto;
	font-size: 0.78rem;
	font-variant-numeric: tabular-nums;
	color: var(--m02-muted);
	line-height: 1.25;
}

/* Старая полоса заливки — не нужна при фиксированном сайдбаре */
.middle::before {
	content: none !important;
	display: none !important;
}

.n2e-zitar-nav {
	width: 156px;
	margin: 0 auto;
	box-sizing: border-box;
}
.n2e-zitar-nav > .userbutton,
.n2e-zitar-sub .userbutton {
	width: 156px;
	margin-left: auto;
	margin-right: auto;
	font-size: 0.88rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.2px !important;
	font-family: inherit;
}
.n2e-zitar-nav .n2e-zitar-caret {
	margin-left: auto;
	flex: 0 0 auto;
	font-size: 0.62rem;
	line-height: 1;
	opacity: 0.55;
	color: inherit;
}
.n2e-zitar-sub {
	padding: 0;
	margin: 0;
}
.n2e-zitar-sub .userbutton {
	padding-left: 14px;
}
#n2eprojectbutton {
	cursor: pointer;
}
#zitarbutton {
	cursor: pointer;
}

.col,
.calendar,
.zitar_planning,
.zitar_indicators,
.profileUserCSS,
.contentForm,
.admin_panel,
.redirectUser,
.n2e-group-create,
.n2e-group-page,
.n2e-group-card {
	background: var(--m02-panel) !important;
	border: 1px solid var(--m02-line) !important;
	border-radius: 12px !important;
	-webkit-box-shadow: none !important;
	-moz-box-shadow: none !important;
	box-shadow: none !important;
	filter: none !important;
	text-shadow: none !important;
	color: var(--m02-text);
	font-family: var(--m02-font-ui);
}
/* Auth / регистрация / восстановление — компактная карточка */
.n2e-auth-row {
	justify-content: center !important;
	align-items: flex-start !important;
	padding: 1.5rem 12px 2rem !important;
	box-sizing: border-box;
}
#formauth.n2e-auth-card,
#formreg.n2e-auth-card,
#recoverpass.n2e-auth-card,
#changepassrecover.n2e-auth-card {
	width: min(360px, 100%) !important;
	max-width: 360px !important;
	min-width: 0 !important;
	min-height: 0 !important;
	margin: 0 auto !important;
	padding: 22px 22px 18px !important;
	text-align: left !important;
	box-sizing: border-box !important;
}
#changepassrecover.n2e-auth-card--wide {
	width: min(400px, 100%) !important;
	max-width: 400px !important;
}
.n2e-auth-title,
#formauth .n2e-auth-title,
#formreg .n2e-auth-title,
#recoverpass .n2e-auth-title,
#changepassrecover .n2e-auth-title,
#formauth h1,
#formreg h1,
#recoverpass h1,
#changepassrecover h1 {
	margin: 0 0 14px !important;
	padding: 0 !important;
	font-family: var(--m02-font-ui) !important;
	font-size: 1.15rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.01em !important;
	line-height: 1.3 !important;
	text-align: center !important;
}
#formauth h1:not([style*="color"]),
#formreg h1:not([style*="color"]),
#recoverpass h1:not([style*="color"]),
#changepassrecover h1:not([style*="color"]) {
	color: var(--m02-text);
}
.n2e-auth-hint {
	margin: -6px 0 14px !important;
	padding: 0 !important;
	font-size: 0.78rem !important;
	line-height: 1.4 !important;
	color: var(--m02-muted) !important;
	text-align: center !important;
}
.n2e-auth-fields {
	display: flex;
	flex-direction: column;
	gap: 12px;
	width: 100%;
	margin: 0 0 16px;
}
.n2e-auth-field {
	position: relative;
	width: 100%;
}
#formauth .n2e-auth-fields .form-control,
#formreg .n2e-auth-fields .form-control,
#recoverpass .n2e-auth-fields .form-control,
#changepassrecover .n2e-auth-fields .form-control {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 8px 0 !important;
	box-sizing: border-box !important;
	text-align: left !important;
}
#formauth .password,
#changepassrecover .password {
	position: relative;
	width: 100%;
}
#formauth .password .form-control,
#changepassrecover .password .form-control {
	padding-right: 4.5em !important;
}
#formauth .password-control,
#changepassrecover .password-control {
	position: absolute !important;
	right: 0 !important;
	top: 50% !important;
	transform: translateY(-50%);
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 0.72rem !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	color: var(--m02-muted) !important;
	text-decoration: none !important;
	z-index: 2;
}
#formauth .password-control:hover,
#changepassrecover .password-control:hover {
	color: var(--m02-cyan) !important;
}
#formauth .n2e-auth-actions,
#formreg .n2e-auth-actions,
#recoverpass .n2e-auth-actions,
#changepassrecover .n2e-auth-actions,
.col .n2e-auth-actions.button-container {
	display: flex !important;
	flex-direction: column !important;
	flex-wrap: nowrap !important;
	justify-content: flex-start !important;
	align-items: stretch !important;
	gap: 12px !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}
#formauth .n2e-auth-actions .blbutton,
#formreg .n2e-auth-actions .blbutton,
#recoverpass .n2e-auth-actions .blbutton,
#changepassrecover .n2e-auth-actions .blbutton {
	margin: 0 !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	flex: 0 0 auto !important;
	float: none !important;
	text-decoration: none !important;
}
#formauth .n2e-auth-primary,
#formreg .n2e-auth-primary,
#recoverpass .n2e-auth-primary,
#changepassrecover .n2e-auth-primary {
	border-color: var(--m02-cyan) !important;
	color: var(--m02-cyan) !important;
}
#formauth .n2e-auth-primary:hover:not(:disabled),
#formreg .n2e-auth-primary:hover:not(:disabled),
#recoverpass .n2e-auth-primary:hover:not(:disabled),
#changepassrecover .n2e-auth-primary:hover:not(:disabled) {
	background: var(--m02-hover) !important;
	border-color: var(--m02-cyan) !important;
	color: var(--m02-cyan) !important;
}
.n2e-auth-secondary {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 6px 14px;
	width: 100%;
}
.n2e-auth-link {
	appearance: none;
	-webkit-appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 2px 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	color: var(--m02-muted);
	font-family: var(--m02-font-ui);
	font-size: 0.78rem;
	font-weight: 500;
	line-height: 1.35;
	letter-spacing: 0.01em;
	text-decoration: none;
	cursor: pointer;
}
.n2e-auth-link:hover {
	color: var(--m02-cyan);
}
#formauth .n2e-auth-pswd-info,
#changepassrecover .n2e-auth-pswd-info,
#changepassrecover #pswd_info {
	position: relative !important;
	left: auto !important;
	right: auto !important;
	width: fit-content !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 8px 10px !important;
	border: 1px solid var(--m02-line) !important;
	border-radius: 8px !important;
	background: transparent !important;
	box-shadow: none !important;
	text-align: left !important;
	box-sizing: border-box !important;
}
#change-pass-profile #pswd_info {
	position: relative !important;
	left: auto !important;
	width: fit-content !important;
	max-width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 8px 10px !important;
	border: 1px solid var(--m02-line) !important;
	border-radius: 8px !important;
	background: transparent !important;
	box-shadow: none !important;
	text-align: left !important;
	box-sizing: border-box !important;
}
#change-pass-profile #pswd_info h4,
#changepassrecover #pswd_info h4 {
	margin: 0 0 6px !important;
	font-size: 0.72rem !important;
	font-weight: 600 !important;
	color: var(--m02-muted) !important;
}
#change-pass-profile #pswd_info ul,
#changepassrecover #pswd_info ul {
	margin: 0 !important;
	padding: 0 0 0 1.1em !important;
}
#change-pass-profile #pswd_info li,
#changepassrecover #pswd_info li {
	margin: 0 0 2px !important;
	font-size: 0.7rem !important;
	line-height: 1.35 !important;
	color: var(--m02-muted) !important;
}
/* valid/invalid — выше по специфичности, чем color у li выше */
#change-pass-profile #pswd_info li.valid,
#changepassrecover #pswd_info li.valid {
	color: #6fcf97 !important;
}
#change-pass-profile #pswd_info li.invalid,
#changepassrecover #pswd_info li.invalid {
	color: #e57373 !important;
}
html[data-n2e-theme="light"] #change-pass-profile #pswd_info li.valid,
html[data-n2e-theme="light"] #changepassrecover #pswd_info li.valid {
	color: #1b7a45 !important;
}
html[data-n2e-theme="light"] #change-pass-profile #pswd_info li.invalid,
html[data-n2e-theme="light"] #changepassrecover #pswd_info li.invalid {
	color: #b42318 !important;
}
/* Компактная карточка смены пароля (настройки) */
#change-pass-profile .n2e-changepass-shell {
	display: flex !important;
	justify-content: center !important;
	align-items: flex-start !important;
	padding: 18px 12px 24px !important;
	box-sizing: border-box !important;
}
#change-pass-profile .n2e-changepass-card {
	width: min(360px, 100%) !important;
	max-width: 360px !important;
	margin: 0 auto !important;
	padding: 8px 4px 0 !important;
	box-sizing: border-box !important;
	text-align: left !important;
}
#change-pass-profile .n2e-changepass-fields {
	display: flex;
	flex-direction: column;
	gap: 12px;
	width: 100%;
	margin: 0 0 16px;
}
#change-pass-profile .n2e-changepass-fields .form-control,
#change-pass-profile .n2e-changepass-fields .form-control-user-profile {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 8px 0 !important;
	box-sizing: border-box !important;
	text-align: left !important;
}
#change-pass-profile .password {
	position: relative;
	width: 100%;
}
#change-pass-profile .password .form-control,
#change-pass-profile .password .form-control-user-profile {
	padding-right: 4.5em !important;
}
#change-pass-profile .password-control {
	position: absolute !important;
	right: 0 !important;
	left: auto !important;
	top: 50% !important;
	transform: translateY(-50%);
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 0.72rem !important;
	font-weight: 500 !important;
	color: var(--m02-muted) !important;
	text-decoration: none !important;
	z-index: 2;
}
#change-pass-profile .password-control:hover {
	color: var(--m02-cyan) !important;
}
#change-pass-profile .messagebox,
#change-pass-profile .messageboxok,
#change-pass-profile .messageboxerror,
#change-pass-profile .messageboxactivated,
#change-pass-profile .msgbox {
	position: static !important;
	display: block !important;
	left: auto !important;
	top: auto !important;
	margin: 8px 0 0 !important;
	max-width: 100% !important;
	width: 100% !important;
	box-sizing: border-box;
	text-align: left;
	line-height: 1.4 !important;
	white-space: normal !important;
}
/* Подсказки валидации: в потоке под полем, один блок (не «таблетки» на каждой строке) */
#formauth .messagebox,
#formauth .messageboxok,
#formauth .messageboxerror,
#formauth .messageboxactivated,
#formreg .messagebox,
#formreg .messageboxok,
#formreg .messageboxerror,
#formreg .messageboxactivated,
#recoverpass .messagebox,
#recoverpass .messageboxok,
#recoverpass .messageboxerror,
#recoverpass .messageboxactivated,
#changepassrecover .messagebox,
#changepassrecover .messageboxok,
#changepassrecover .messageboxerror,
#changepassrecover .messageboxactivated {
	position: static !important;
	display: block !important;
	left: auto !important;
	top: auto !important;
	right: auto !important;
	margin: 8px 0 0 !important;
	max-width: 100% !important;
	width: 100% !important;
	box-sizing: border-box !important;
	text-align: left !important;
	line-height: 1.4 !important;
	white-space: normal !important;
	z-index: auto;
}
/* Планирование / показатели — та же спокойная оболочка, что у чата */
.zitar_planning,
.zitar_indicators {
	border-radius: 12px !important;
}
/* Обёртки списков/секций — без панели на всю ширину (давала «свечение» загрузки) */
.friends,
.people,
.subscribersView,
.subscriptionsView,
.invitationsView,
.groupsView,
.blacklistView,
.eventsView {
	background: transparent !important;
	border: none !important;
	-webkit-box-shadow: none !important;
	-moz-box-shadow: none !important;
	box-shadow: none !important;
	filter: none !important;
}

/* Маска диска вместо type=password — без UI паролей Firefox/Chrome */
.n2e-pin-mask {
	-webkit-text-security: disc !important;
	text-security: disc !important;
}
.n2e-pin-mask.is-revealed {
	-webkit-text-security: none !important;
	text-security: none !important;
}

.form-control,
.form-control-user-profile,
input.form-control,
textarea.form-control,
select.form-control,
input[type="text"],
input[type="password"],
input.n2e-pin-mask,
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="date"],
input[type="search"],
textarea,
select,
.eventForm,
.forMarital,
#fakeMarital {
	font-family: var(--m02-font-input) !important;
	font-size: 0.84rem !important;
	font-weight: 400 !important;
	letter-spacing: normal !important;
	line-height: 1.4 !important;
	background: var(--m02-input-bg) !important;
	border: none !important;
	border-bottom: 1px solid var(--m02-line) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--m02-text) !important;
	opacity: 1 !important;
}
input.n2e-input-ok,
textarea.n2e-input-ok,
.form-control.n2e-input-ok {
	border-bottom-color: #3d9a5f !important;
	color: #3d9a5f !important;
}
input.n2e-input-bad,
textarea.n2e-input-bad,
.form-control.n2e-input-bad {
	border-bottom-color: #c45b5b !important;
	color: #c45b5b !important;
}
.form-control:focus,
.form-controlfakefocus,
textarea:focus,
input:focus,
select:focus {
	outline: none !important;
	border-color: transparent !important;
	border-bottom-color: var(--m02-cyan) !important;
	box-shadow: none !important;
	background: var(--m02-input-bg) !important;
	opacity: 1 !important;
}
input::placeholder,
textarea::placeholder {
	font-family: var(--m02-font-input);
	color: var(--m02-muted);
	opacity: 1;
}

.blbutton,
.blbuttonuser,
.bl,
button.blbutton,
.n2e-msg-quiet-btn,
.n2e-group-btn,
.button-change-pass-profile {
	appearance: none !important;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	height: var(--n2e-btn-height) !important;
	min-height: var(--n2e-btn-height) !important;
	max-height: var(--n2e-btn-height) !important;
	margin: 0 !important;
	margin-top: 0 !important;
	padding: 0 var(--n2e-btn-pad-x) 1px !important;
	position: static !important;
	left: auto !important;
	background: transparent !important;
	border: 1px solid var(--m02-line) !important;
	border-radius: var(--n2e-btn-radius) !important;
	color: var(--m02-muted) !important;
	box-shadow: none !important;
	font-family: var(--m02-font-ui) !important;
	font-size: var(--n2e-btn-font) !important;
	font-weight: var(--n2e-btn-weight) !important;
	letter-spacing: var(--n2e-btn-tracking) !important;
	line-height: 1 !important;
	text-align: center !important;
	vertical-align: middle !important;
	text-decoration: none !important;
	white-space: nowrap;
	cursor: pointer;
}
/* Firefox: дефолтный padding ::-moz-focus-inner толкает подпись вниз */
.blbutton::-moz-focus-inner,
.blbuttonuser::-moz-focus-inner,
.bl::-moz-focus-inner,
button.blbutton::-moz-focus-inner,
.n2e-msg-quiet-btn::-moz-focus-inner,
.n2e-group-btn::-moz-focus-inner,
.button-change-pass-profile::-moz-focus-inner {
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
}
.blbutton:before,
.blbutton:after,
.blbuttonuser:before,
.blbuttonuser:after,
.n2e-msg-quiet-btn:before,
.n2e-msg-quiet-btn:after,
.n2e-group-btn:before,
.n2e-group-btn:after,
.button-change-pass-profile:before,
.button-change-pass-profile:after {
	display: none !important;
	content: none !important;
}
.blbutton:hover,
.blbuttonuser:hover,
.bl:hover,
.n2e-msg-quiet-btn:hover,
.n2e-group-btn:hover,
.button-change-pass-profile:hover {
	background: var(--m02-hover) !important;
	border-color: var(--m02-cyan) !important;
	color: var(--m02-cyan) !important;
	box-shadow: none !important;
}
.blbutton:disabled,
.blbuttonuser:disabled,
.n2e-msg-quiet-btn:disabled,
.n2e-group-btn:disabled,
.button-change-pass-profile:disabled {
	opacity: 0.45;
	box-shadow: none !important;
	cursor: default;
}

.confidencialfilter,
.confidencial_additional,
.messages_access_opt,
.hidden_chats_btn_opt,
.change_user_panel,
.n2e-group-filter-div .change_user_panel {
	background: transparent !important;
	color: var(--m02-muted) !important;
	border-radius: 0 !important;
	border: none !important;
	border-bottom: 2px solid transparent !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	vertical-align: middle !important;
	font-family: var(--m02-font-ui);
}
.confidencialfilter:hover,
.confidencial_additional:hover,
.messages_access_opt:hover,
.hidden_chats_btn_opt:hover,
.change_user_panel:hover {
	background: transparent !important;
	color: var(--m02-text) !important;
}
.confidencialfilterActive,
.confidencial_additionalActive,
.messages_access_optActive,
.hidden_chats_btn_optActive,
.change_user_panelActive {
	background: transparent !important;
	color: var(--m02-cyan) !important;
	border-bottom-color: var(--m02-cyan) !important;
	box-shadow: none !important;
}
/* Календарь: год/месяц — без underline (только opacity) */
.calendar .prevNextYearCSS,
.calendar .prevNextMonthCSS,
.zitar_planning .prevNextYearCSS,
.zitar_planning .prevNextMonthCSS {
	border: none !important;
	border-bottom: none !important;
	box-shadow: none !important;
	align-items: center !important;
	padding: 0 !important;
	transform: none !important;
}
.calendar .currentYearCSS,
.calendar .currentMonthCSS,
.zitar_planning .currentYearCSS,
.zitar_planning .currentMonthCSS {
	border: none !important;
	border-bottom: none !important;
	box-shadow: none !important;
	color: var(--m02-text) !important;
	opacity: 1 !important;
	transform: none !important;
}
/* Фильтры событий календаря — underline через ::after; базовая линия текста на месте */
.calendar .confidencialfilter {
	position: relative !important;
	border: none !important;
	border-bottom: none !important;
	box-shadow: none !important;
	padding: 4px 10px 12px !important;
	line-height: 1.25 !important;
	min-height: 0 !important;
	vertical-align: baseline !important;
	transform: none !important;
}
.calendar .confidencialfilter::after {
	content: "";
	position: absolute;
	left: 12px;
	right: 12px;
	bottom: 2px;
	height: 2px;
	background: transparent;
	pointer-events: none;
}
.calendar .confidencialfilterActive {
	border: none !important;
	border-bottom: none !important;
	box-shadow: none !important;
	color: var(--m02-cyan) !important;
	transform: none !important;
}
.calendar .confidencialfilterActive::after {
	background: var(--m02-cyan);
}
.n2e-group-filter-div .change_user_panel {
	position: relative !important;
	padding: 4px 10px 12px !important;
	font-weight: 500 !important;
	font-size: 0.78rem !important;
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	flex: 0 0 auto;
	border-bottom: none !important;
}
.n2e-group-filter-div .change_user_panel::after {
	content: "";
	position: absolute;
	left: 8px;
	right: 8px;
	bottom: 2px;
	height: 2px;
	background: transparent;
	pointer-events: none;
}
.n2e-group-filter-div .change_user_panelActive,
.n2e-group-filter-div .change_user_panelActive:hover {
	color: var(--m02-cyan) !important;
	border-bottom: none !important;
}
.n2e-group-filter-div .change_user_panelActive::after {
	background: var(--m02-cyan);
}
.n2e-group-filter-div {
	display: flex !important;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 4px 12px;
	width: 100% !important;
	max-width: 420px !important;
	margin: 4px auto 10px !important;
	padding: 0 !important;
	border: none !important;
}
.n2e-invite-tabs {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	justify-content: center !important;
	align-items: center !important;
	gap: 4px 8px;
	width: 100% !important;
	max-width: none !important;
	margin: 0 0 14px !important;
	padding: 0 0 8px !important;
	border: none !important;
	background: transparent !important;
}
.invitationsView .friendSearch,
.invitationsView #n2eEventInviteSearchIn,
.invitationsView #n2eGroupInviteSearchIn,
.friends .friendSearch,
.people .friendSearch,
.subscribersView .friendSearch,
.subscriptionsView .friendSearch,
.groupsView .friendSearch,
.n2e-groups-shell .friendSearch,
.eventsView .friendSearch,
.n2e-events-shell .friendSearch,
.admin_panel .userSearch,
.admin_panel .friendSearch,
#n2eGroupInviteSearch,
.n2e-group-invite-panel #n2eGroupInviteSearch {
	text-align: center !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Приглашения / принять в списках — cyan-акцент */
.invitationsView .n2e-invite-accept,
.invitationsView .n2e-g-invite-accept,
.n2e-list-actions .n2e-invite-accept,
.n2e-list-actions .n2e-g-invite-accept,
.n2e-list-actions .n2e-sub-accept,
.n2e-list-actions .n2e-people-accept {
	color: var(--m02-cyan) !important;
	border-color: rgba(127, 220, 232, 0.5) !important;
}

/* Приглашение в группу: крупный аватар группы под высоту имени+кнопок */
.invitationsView .n2e-group-invite-card.n2e-list-card {
	align-items: center !important;
	gap: 16px !important;
}
.invitationsView .n2e-group-invite-card > .n2e-user-avatar,
.invitationsView .n2e-group-invite-card > .n2e-group-avatar,
.invitationsView .n2e-group-invite-card > .n2e-group-avatar-empty {
	width: 80px !important;
	height: 80px !important;
	flex-shrink: 0;
	font-size: 1.15rem;
}
.invitationsView .n2e-group-invite-card .n2e-group-avatar-initials {
	font-size: 1.2rem !important;
	letter-spacing: 0.04em;
}
.n2e-invite-tabs .change_user_panel {
	position: relative !important;
	display: inline-flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: center;
	gap: 5px;
	padding: 4px 12px 14px !important;
	font-weight: 500 !important;
	font-size: 0.78rem !important;
	line-height: 1.25 !important;
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	flex: 0 0 auto !important;
	border-bottom: none !important;
	vertical-align: middle !important;
}
.n2e-invite-tab-label {
	display: inline-block;
	line-height: 1.25;
}
.n2e-invite-tab-badge {
	display: none;
	box-sizing: border-box !important;
	min-width: 18px !important;
	height: 18px !important;
	padding: 0 4px !important;
	border-radius: 999px !important;
	font-family: var(--m02-font-ui) !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	font-variant-numeric: lining-nums !important;
	line-height: 1 !important;
	letter-spacing: 0 !important;
	text-align: center !important;
	background: rgba(127, 220, 232, 0.1) !important;
	color: var(--m02-cyan) !important;
	border: 1px solid rgba(127, 220, 232, 0.38) !important;
	box-shadow: none !important;
	opacity: 0.92;
	position: relative;
	top: -1px;
	z-index: 1;
	flex: 0 0 auto;
	align-self: center;
}
.n2e-invite-tab-has-badge .n2e-invite-tab-badge {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	transform: translateX(-0.5px);
}
.n2e-invite-tabs .change_user_panelActive .n2e-invite-tab-badge {
	background: rgba(127, 220, 232, 0.16) !important;
	border-color: rgba(127, 220, 232, 0.55) !important;
	opacity: 1;
}
.n2e-invite-tabs .change_user_panel::after {
	content: "";
	position: absolute;
	left: 8px;
	right: 8px;
	bottom: 2px;
	height: 2px;
	background: transparent;
	pointer-events: none;
}
.n2e-invite-tabs .change_user_panelActive,
.n2e-invite-tabs .change_user_panelActive:hover {
	color: var(--m02-cyan) !important;
	border-bottom: none !important;
}
.n2e-invite-tabs .change_user_panelActive::after {
	background: var(--m02-cyan);
}

.dayDiv {
	background: var(--m02-panel) !important;
	border: 1px solid var(--m02-line) !important;
	border-radius: 8px !important;
	box-shadow: none !important;
	color: var(--m02-text);
	font-family: var(--m02-font-ui);
	text-shadow: none !important;
	vertical-align: top;
	position: relative;
	/* Размер 58px только на реальном desktop — иначе 7×(~80px content-box) шире телефона */
	box-sizing: border-box !important;
	min-width: 0;
}
@media (min-width: 721px) and (min-device-width: 721px) {
	.dayDiv {
		box-sizing: content-box !important;
		width: 58px !important;
		height: 72px !important;
		min-width: 58px !important;
		max-width: 58px !important;
		padding: 8px 10px 10px !important;
		margin: 1px !important;
		font-size: 0.7rem !important;
	}
	.dayDiv:hover {
		opacity: 1 !important;
		background: var(--m02-hover) !important;
		color: var(--m02-text) !important;
		border-color: var(--m02-cyan) !important;
		width: 58px !important;
		height: 72px !important;
		font-size: 0.7rem !important;
		padding: 8px 10px 10px !important;
	}
}
.dayDiv:hover {
	opacity: 1 !important;
	background: var(--m02-hover) !important;
	color: var(--m02-text) !important;
	border-color: var(--m02-cyan) !important;
}
.currentDayDiv {
	border-color: var(--m02-cyan) !important;
	border-width: 1px !important;
	color: var(--m02-cyan);
}
.dayDivEventLength {
	box-sizing: border-box !important;
	position: absolute !important;
	left: 50% !important;
	right: auto !important;
	bottom: 3px !important;
	transform: translateX(-50%);
	display: flex !important;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 2px;
	min-width: 36px;
	max-width: calc(100% - 8px);
	padding: 4px 7px 5px !important;
	border: 1px solid rgba(127, 220, 232, 0.55) !important;
	border-radius: 3px !important;
	background: rgba(127, 220, 232, 0.06) !important;
	box-shadow:
		0 0 0 1px rgba(127, 220, 232, 0.12),
		0 0 10px rgba(127, 220, 232, 0.22) !important;
	white-space: nowrap;
	text-align: center;
	line-height: 1;
	pointer-events: none;
	overflow: hidden;
	font-family: var(--m02-font-ui) !important;
}
.dayDivEventLength::before,
.dayDivEventLength::after,
.dayDivEventLength .n2e-day-sep {
	content: none;
	display: none;
}
.dayDivEventLength .n2e-day-brand {
	display: block;
	font-family: Cabin Condensed, Montserrat, "Segoe UI", sans-serif !important;
	font-size: 0.62rem !important;
	font-weight: 600 !important;
	font-style: italic !important;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	line-height: 1;
	padding-left: 0.1em;
	color: #7fdce8 !important;
	text-shadow: 0 0 8px rgba(127, 220, 232, 0.45);
	opacity: 1;
}
.dayDivEventLength .n2e-day-brand-n,
.dayDivEventLength .n2e-day-brand-2e {
	color: inherit !important;
}
.dayDivEventLength .n2e-day-count {
	display: block;
	font-family: Cabin Condensed, Montserrat, "Segoe UI", sans-serif !important;
	font-size: 0.72rem !important;
	font-weight: 600 !important;
	font-style: normal !important;
	letter-spacing: 0.04em;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum" 1;
	color: var(--m02-text) !important;
	text-shadow: none;
	opacity: 0.95;
	min-width: 0;
}
html[data-n2e-theme="light"] .dayDivEventLength {
	border-color: rgba(91, 158, 185, 0.5) !important;
	background: rgba(91, 158, 185, 0.07) !important;
	box-shadow:
		0 0 0 1px rgba(91, 158, 185, 0.1),
		0 0 8px rgba(91, 158, 185, 0.18) !important;
}
html[data-n2e-theme="light"] .dayDivEventLength .n2e-day-brand {
	color: #4f8eab !important;
	text-shadow: 0 0 6px rgba(91, 158, 185, 0.35);
}
html[data-n2e-theme="light"] .dayDivEventLength .n2e-day-count {
	color: #3d5263 !important;
}
.dayEventElement,
.moreEventElement {
	background: transparent !important;
	border: 1px solid var(--m02-line) !important;
	border-radius: 10px !important;
	box-shadow: none !important;
	color: var(--m02-text) !important;
	font-family: var(--m02-font-ui);
	font-size: 0.82rem !important;
}
.dayEventElement:hover,
.moreEventElement:hover {
	background: var(--m02-hover) !important;
	border-color: var(--m02-cyan) !important;
	color: var(--m02-text) !important;
	box-shadow: none !important;
}
.dayEventCardInner {
	display: flex !important;
	align-items: flex-start !important;
	gap: 10px !important;
}
.dayEventCardAvatar {
	flex-shrink: 0 !important;
}
.dayEventCardBody {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	display: block !important;
}
.dayEventCardMain {
	min-width: 0;
	width: 100%;
}
.dayEventCardTop {
	display: flex !important;
	align-items: flex-start !important;
	justify-content: space-between !important;
	gap: 10px !important;
	margin: 0 0 4px !important;
}
.dayEventCardTopLeft {
	min-width: 0 !important;
	flex: 1 1 auto !important;
}
.dayEventCardTopRight {
	flex: 0 0 auto !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-end !important;
	justify-content: flex-start !important;
	gap: 3px !important;
	max-width: min(42%, 11em) !important;
	text-align: right !important;
}
.dayEventCardTopLeft .dayEventCardTitle {
	margin: 0 0 4px !important;
}
.dayEventCardTopLeft .dayEventCardMeta {
	margin: 0 !important;
}
.dayEventCardTitle {
	font-size: 0.91rem !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	color: var(--m02-cyan) !important;
	margin: 0 0 4px !important;
	display: -webkit-box !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: 2 !important;
	overflow: hidden !important;
	word-break: break-word !important;
}
.dayEventCardMeta {
	font-size: 0.91rem !important;
	line-height: 1.35 !important;
	color: var(--m02-muted) !important;
	margin: 0 0 6px !important;
	display: -webkit-box !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: 1 !important;
	overflow: hidden !important;
}
.dayEventCardDesc {
	font-size: 0.91rem !important;
	line-height: 1.4 !important;
	color: var(--m02-text) !important;
	margin: 0 0 6px !important;
	display: -webkit-box !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: 2 !important;
	overflow: hidden !important;
	word-break: break-word !important;
	white-space: normal !important;
}
.dayEventCardFoot {
	font-size: 0.91rem !important;
	line-height: 1.35 !important;
	color: var(--m02-muted) !important;
	padding-top: 6px !important;
	margin-top: 2px !important;
	border-top: 1px solid var(--m02-line) !important;
	display: -webkit-box !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: 2 !important;
	overflow: hidden !important;
	word-break: break-word !important;
	white-space: normal !important;
	max-width: 100% !important;
}
.moreEventElement {
	font-size: 0.8rem !important;
	padding: 8px 0 !important;
}

.modalElement,
.event-specific,
.modalElementEditUser {
	background: var(--m02-panel) !important;
	border: 1px solid var(--m02-line);
	border-radius: 12px !important;
	box-shadow: none !important;
	color: var(--m02-text);
	font-family: var(--m02-font-ui);
}
.modalElement .saveDataEventDiv {
	display: block !important;
	width: calc(100% - 28px) !important;
	max-width: 420px !important;
	box-sizing: border-box !important;
	margin: 10px auto 12px !important;
	padding: 14px 16px 16px !important;
	border: 1px solid var(--m02-line) !important;
	border-radius: 10px !important;
	box-shadow: none !important;
	background: var(--m02-panel) !important;
	text-align: center;
	position: relative;
	z-index: 1;
}
.modalElement .saveDataEventDiv .saveDataEventText {
	margin: 0 0 12px !important;
	padding: 0 !important;
	color: var(--m02-text) !important;
	font-size: 0.9rem !important;
	line-height: 1.45 !important;
	white-space: normal !important;
}
.modalElement .saveDataEventDiv .saveDataEventActions,
.modalElement .saveDataEventDiv .n2e-popup-actions {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	justify-content: center !important;
	align-items: center !important;
	gap: 10px !important;
	margin: 0 !important;
	padding: 0 !important;
}
.modalElement .saveDataEventDiv .saveDataEventActions .blbutton,
.modalElement .saveDataEventDiv .n2e-popup-actions .blbutton {
	display: inline-flex !important;
	width: auto !important;
	min-width: 5.5em !important;
	margin: 0 !important;
	float: none !important;
	flex: 0 0 auto !important;
}
/* CTA модалки дня — глобальный .blbutton обнуляет margin; оставить воздух вокруг кнопки создания */
.modalElement > #eventformdisp.blbutton,
.modalElement #eventformdisp.blbutton {
	margin: 1.25em auto !important;
	display: inline-flex !important;
}
.modalElement .noEventToday {
	margin: 0.25em 0 1em !important;
}
.HighLevelModal #eventformdisp.blbutton,
.HighLevelModal #eventformdispKick.blbutton {
	margin: 1.25em auto 0 !important;
	display: inline-flex !important;
}
.HighLevelBackground {
	background-color: var(--m02-overlay) !important;
}
/* Правка пользователя в админке / день календаря / планирование / лист события: затемнять и сайдбар */
.modalBackground,
.eventBackground,
.event-specificBackground {
	background-color: rgba(0, 0, 0, 0.72) !important;
	opacity: 1 !important;
	z-index: 90 !important;
}
/*
 * Панели — position:fixed (тот же слой, что оверлеи в #fakeDiv).
 * Absolute .modalElement внутри .middle проигрывает fixed z-index 90 даже при z-index 91.
 * Вложенные confirm: popup* ~95–96; HighLevel остаётся 99+.
 */
.modalElement,
.modalElementEditUser,
.event-specific {
	position: fixed !important;
	z-index: 91 !important;
}
.modalElement,
.event-specific {
	top: 5% !important;
	left: 50% !important;
	right: auto !important;
	margin-left: 0 !important;
	transform: translateX(-50%) !important;
	max-height: min(90vh, 920px);
	overflow-x: hidden;
	overflow-y: auto;
}
.HighLevelModal {
	top: 14% !important;
	transform: translateX(-50%) !important;
}
.n2e-pass-ok-modal {
	top: 22% !important;
	width: min(420px, calc(100vw - 48px)) !important;
	max-width: 420px !important;
	min-width: 280px !important;
	padding: 28px 32px 24px !important;
	font-size: 1rem !important;
	text-align: center !important;
	box-sizing: border-box !important;
}
.n2e-pass-ok-modal .n2e-pass-ok-msg {
	margin: 0 0 20px !important;
	font-size: 1.2rem !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.01em !important;
	color: var(--m02-text) !important;
}
.n2e-pass-ok-modal .blbutton {
	width: auto !important;
	min-width: 96px !important;
	margin: 0 auto !important;
	color: var(--m02-cyan) !important;
	border: 1px solid var(--m02-cyan) !important;
	background: transparent !important;
	box-shadow: none !important;
}
.n2e-pass-ok-modal .blbutton:hover {
	color: var(--m02-text) !important;
	border-color: var(--m02-cyan) !important;
	background: var(--m02-cyan-soft, rgba(127, 220, 232, 0.12)) !important;
}
#change-pass-profile .n2e-changepass-actions {
	display: flex !important;
	flex-direction: column !important;
	flex-wrap: nowrap !important;
	justify-content: flex-start !important;
	align-items: stretch !important;
	gap: 12px !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
}
#change-pass-profile .n2e-changepass-actions .n2e-auth-primary {
	width: 100% !important;
	border-color: var(--m02-cyan) !important;
	color: var(--m02-cyan) !important;
}
#change-pass-profile .n2e-changepass-actions .n2e-auth-secondary {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px 10px;
	width: 100%;
}
#change-pass-profile .n2e-changepass-actions .button-change-pass-profile,
#changepassrecover .n2e-changepass-actions .blbutton {
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	color: var(--m02-muted) !important;
	border: 1px solid var(--m02-line) !important;
	background: transparent !important;
	box-shadow: none !important;
}
#change-pass-profile .n2e-changepass-actions .n2e-auth-primary.button-change-pass-profile {
	width: 100% !important;
	color: var(--m02-cyan) !important;
	border-color: var(--m02-cyan) !important;
}
#change-pass-profile .n2e-changepass-actions .button-change-pass-profile:hover:not(:disabled),
#changepassrecover .n2e-changepass-actions .blbutton:hover:not(:disabled) {
	color: var(--m02-cyan) !important;
	border-color: var(--m02-cyan) !important;
	background: var(--m02-hover) !important;
}
#change-pass-profile .n2e-changepass-actions .button-change-pass-profile:disabled,
#changepassrecover .n2e-changepass-actions .blbutton:disabled {
	opacity: 0.45;
	cursor: default;
}
#changepassrecover .n2e-changepass-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px 12px;
	margin: 16px auto 8px;
}
#change-pass-profile #h1changepassrecover,
#changepassrecover #h1changepassrecover {
	font-size: 1.15rem !important;
	font-weight: 600 !important;
	margin: 0 0 14px !important;
	text-align: center !important;
}

.n2e-bell {
	background: transparent !important;
	color: var(--m02-text) !important;
	border: 0 !important;
	border-radius: 10px !important;
	box-shadow: none !important;
}
.n2e-bell-icon {
	width: 24px;
	height: 24px;
	display: block;
}
/* Только hover / клавиатура — мышиный :focus не должен оставаться «горящим» после клика */
.n2e-bell:hover,
.n2e-bell:focus-visible {
	background: var(--m02-hover) !important;
	color: var(--m02-cyan) !important;
	transform: none !important;
	box-shadow: none !important;
	outline: none;
}
.n2e-bell:focus:not(:focus-visible) {
	background: transparent !important;
	color: var(--m02-text) !important;
	outline: none;
	box-shadow: none !important;
}
.n2e-bell[aria-expanded="true"] {
	color: var(--m02-cyan) !important;
	background: var(--m02-hover) !important;
}
.n2e-bell-has-unread {
	color: var(--m02-cyan) !important;
}
.n2e-bell-has-unread:focus:not(:focus-visible) {
	color: var(--m02-cyan) !important;
	background: transparent !important;
}
.n2e-bell-badge,
.n2e-nav-badge {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: rgba(127, 220, 232, 0.18) !important;
	color: var(--m02-cyan) !important;
	border: 1px solid rgba(127, 220, 232, 0.42) !important;
	box-shadow: none !important;
	font-family: var(--m02-font-ui) !important;
	font-weight: 600 !important;
	font-size: 11px !important;
	font-variant-numeric: tabular-nums !important;
	min-width: 18px !important;
	height: 18px !important;
	padding: 0 5px !important;
	line-height: 1 !important;
	letter-spacing: 0 !important;
	opacity: 1;
	border-radius: 999px !important;
	box-sizing: border-box !important;
	/* оптический центр цифры (шрифт чуть «висит» вверх) */
	padding-top: 1px !important;
	padding-bottom: 0 !important;
	transition: opacity 0.28s ease, transform 0.28s ease;
}
.n2e-bell-badge.is-badge-leave,
.n2e-nav-badge.is-badge-leave {
	opacity: 0 !important;
	transform: scale(0.86);
}
.n2e-bell-badge[hidden],
.n2e-nav-badge[hidden],
.n2e-bell-badge:empty,
.n2e-nav-badge:empty {
	display: none !important;
}
.n2e-bell-badge {
	min-width: 18px !important;
	height: 18px !important;
	font-size: 11px !important;
	padding: 1px 5px 0 !important;
	top: 1px !important;
	right: 1px !important;
}
.n2e-nav-badge {
	margin-right: 4px;
	margin-left: auto;
}
.userbuttonActive .n2e-nav-badge {
	background: rgba(127, 220, 232, 0.28) !important;
	border-color: rgba(127, 220, 232, 0.6) !important;
	color: var(--m02-cyan) !important;
	opacity: 1;
}
.n2e-notif-panel {
	background: var(--m02-panel);
	border: 1px solid var(--m02-line);
	box-shadow: none;
	border-radius: 12px;
	width: 420px;
	max-width: calc(100vw - 24px);
	max-height: min(520px, calc(100dvh - 56px));
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.n2e-notif-panel-head {
	background: transparent;
	border-bottom: none;
	color: var(--m02-text);
	font-size: 0.95rem;
	font-weight: 600;
	letter-spacing: 0.02em;
	padding: 14px 16px 10px;
	flex: 0 0 auto;
}
.n2e-notif-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	padding: 0 10px;
	border-bottom: 1px solid rgba(127, 220, 232, 0.28);
	background: transparent;
	flex: 0 0 auto;
}
.n2e-notif-filter {
	appearance: none;
	position: relative;
	flex: 1 1 30%;
	min-width: 5.2em;
	margin: 0;
	padding: 9px 8px 11px;
	border: none;
	border-bottom: 2px solid transparent;
	background: transparent;
	color: var(--m02-muted);
	font: inherit;
	font-size: 0.82rem;
	font-weight: 600;
	letter-spacing: 0.01em;
	line-height: 1.2;
	text-align: center;
	cursor: pointer;
	white-space: nowrap;
}
.n2e-notif-filter:hover {
	color: var(--m02-text);
}
.n2e-notif-filter.is-active {
	color: var(--m02-cyan);
	border-bottom-color: var(--m02-cyan);
}
.n2e-notif-filter.has-dot::after {
	content: '';
	position: absolute;
	top: 6px;
	right: 6px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--m02-cyan);
	box-shadow: 0 0 0 1px var(--m02-panel);
}
.n2e-notif-list {
	padding: 8px 8px 10px;
	box-sizing: border-box;
	flex: 1 1 auto;
	min-height: 0;
	overflow-x: hidden;
	overflow-y: auto;
	max-height: none;
}
.n2e-notif-item {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	background: transparent;
	border: none;
	border-radius: 10px;
	color: var(--m02-text);
	padding: 11px 14px 11px 16px;
	position: relative;
	text-align: left;
	width: 100%;
	box-sizing: border-box;
	margin: 0 0 2px;
	transition: background 0.15s ease;
}
.n2e-notif-item:hover {
	background: var(--m02-hover) !important;
}
.n2e-notif-type-ico {
	position: absolute;
	right: -3px;
	bottom: -3px;
	width: 20px;
	height: 20px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: var(--m02-panel);
	border: 1px solid var(--m02-line);
	color: var(--m02-muted);
	box-sizing: border-box;
}
.n2e-notif-type-ico svg {
	display: block;
}
.n2e-notif-unread .n2e-notif-type-ico {
	color: var(--m02-cyan);
	border-color: rgba(110, 184, 196, 0.45);
}
.n2e-notif-media {
	position: relative;
	flex: 0 0 auto;
	width: 44px;
	height: 44px;
	margin-top: 1px;
}
.n2e-notif-avatar {
	display: block;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	object-fit: cover;
	background: var(--m02-panel);
	border: 1px solid var(--m02-line);
	box-sizing: border-box;
}
.n2e-notif-avatar-empty {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.82rem;
	font-weight: 600;
	letter-spacing: 0.02em;
	color: var(--m02-muted);
	background: var(--m02-hover);
}
.n2e-notif-item-body {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 3px;
	align-items: flex-start;
}
.n2e-notif-unread {
	background: var(--m02-cyan-soft) !important;
}
.n2e-notif-unread::before {
	content: '';
	position: absolute;
	left: 4px;
	top: 12px;
	bottom: 12px;
	width: 2px;
	border-radius: 2px;
	background: var(--m02-cyan);
	opacity: 0.7;
}
.n2e-notif-item-title {
	color: var(--m02-text);
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.35;
}
.n2e-notif-item-text,
.n2e-notif-empty {
	color: var(--m02-muted);
	font-size: 0.84rem;
	line-height: 1.4;
}
.n2e-notif-empty {
	padding: 22px 14px;
	text-align: center;
}
.n2e-notif-item-time {
	color: var(--m02-muted);
	opacity: 0.75;
	font-size: 0.76rem;
	line-height: 1.3;
}

.n2e-group-card,
.n2e-group-page,
.admin_user_block,
.friendDiv,
.peopleDiv,
.userDivAdmin,
.n2e-group-create,
.n2e-group-hero,
.n2e-group-post,
.n2e-group-settings,
.n2e-group-composer,
.n2e-group-feed,
.n2e-group-events,
.n2e-group-settings-toggle {
	-webkit-box-shadow: none !important;
	-moz-box-shadow: none !important;
	box-shadow: none !important;
	filter: none !important;
	border-color: var(--m02-line) !important;
	background: var(--m02-panel) !important;
	color: var(--m02-text);
	font-family: var(--m02-font-ui);
}
.admin_user_block,
.friendDiv,
.peopleDiv,
.userDivAdmin,
.n2e-group-hero,
.n2e-group-post,
.n2e-group-settings,
.n2e-group-composer,
.n2e-group-feed,
.n2e-group-events,
.n2e-group-settings-toggle {
	border-radius: 10px !important;
}
.n2e-group-hero {
	border-width: 1px !important;
	padding: 10px 12px 8px !important;
}
.n2e-group-page-title {
	font-size: 1.12rem !important;
	margin: 0 0 2px !important;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	word-break: break-word;
}
.n2e-group-page-desc {
	color: var(--m02-text) !important;
	background: transparent !important;
	border: none !important;
	opacity: 0.92;
	font-size: 0.92rem !important;
	line-height: 1.35 !important;
	padding: 0 !important;
	margin: 4px 0 0 !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	max-height: none !important;
}
.n2e-group-page-vis {
	color: var(--m02-muted) !important;
	font-size: 0.84rem !important;
	line-height: 1.3 !important;
	margin: 0 !important;
}
.n2e-group-meta,
.n2e-group-desc {
	font-size: 0.74rem !important;
	color: var(--m02-muted) !important;
	line-height: 1.3 !important;
}
.n2e-group-meta {
	font-size: 0.84rem !important;
}
.n2e-group-desc {
	font-size: 0.84rem !important;
	opacity: 0.9;
	display: -webkit-box !important;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.n2e-group-composer {
	padding: 6px 8px !important;
	margin-bottom: 8px !important;
	border-width: 1px !important;
}
.n2e-group-post {
	padding: 6px 8px !important;
}
.n2e-group-post-body {
	color: var(--m02-text) !important;
	font-size: 0.92rem !important;
	line-height: 1.4 !important;
}
.n2e-group-posts {
	gap: 5px !important;
}
.n2e-group-feed-head {
	margin: 6px 0 8px !important;
}
.n2e-group-feed-title {
	font-size: 0.88rem !important;
	margin: 0 !important;
	text-align: center !important;
}
.n2e-group-members-body {
	max-height: 320px !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	scrollbar-width: thin;
	scrollbar-color: var(--m02-cyan) var(--m02-panel);
}
.n2e-group-members-body::-webkit-scrollbar {
	width: 8px;
	height: 8px;
}
.n2e-group-members-body::-webkit-scrollbar-track {
	background: var(--m02-panel);
}
.n2e-group-members-body::-webkit-scrollbar-thumb {
	background: var(--m02-line);
	border-radius: 0;
}
.n2e-group-members-body::-webkit-scrollbar-thumb:hover {
	background: var(--m02-cyan);
}
.n2e-group-member {
	padding: 3px 6px !important;
}
.n2e-group-member-avatar,
.n2e-group-member-avatar.n2e-user-avatar {
	width: 28px !important;
	height: 28px !important;
}
.n2e-group-avatar-lg {
	width: 104px !important;
	height: 104px !important;
}

/* Композер ленты группы / посты — без белых плашек в тёмной теме */
.n2e-group-composer,
.n2e-group-post,
.n2e-group-event,
.n2e-group-page,
.n2e-group-settings-panel,
.n2e-group-avatar-drop {
	background: var(--m02-panel) !important;
	border: 1px solid var(--m02-line) !important;
	border-radius: 10px !important;
}
.n2e-group-feed-title,
.n2e-group-post-author,
.n2e-group-post-body,
.n2e-group-event-title {
	color: var(--m02-text) !important;
}
.n2e-group-post-author {
	color: var(--m02-cyan) !important;
	font-size: 0.92rem !important;
	font-weight: 600 !important;
}
.n2e-group-post-author:hover {
	color: var(--m02-cyan) !important;
	opacity: 0.88;
	text-decoration: underline;
}
.n2e-group-post-body {
	font-size: 0.92rem !important;
	line-height: 1.4 !important;
}
.n2e-group-event-title {
	font-size: 0.9rem !important;
}
.n2e-group-event-meta,
.n2e-group-event-author {
	font-size: 0.84rem !important;
}
.n2e-group-post-when,
.n2e-group-composer-hint,
.n2e-group-feed-locked,
.n2e-group-feed-empty,
.n2e-group-event-meta,
.n2e-group-event-author {
	color: var(--m02-muted) !important;
}
.n2e-group-post-when {
	font-size: 0.78rem !important;
}
.n2e-group-event:hover {
	background: var(--m02-hover) !important;
	border-color: var(--m02-cyan) !important;
}
.n2e-group-post-textarea,
.n2e-group-composer textarea {
	background: transparent !important;
	color: var(--m02-text) !important;
	border: none !important;
	border-bottom: 1px solid var(--m02-line) !important;
	resize: none !important;
	box-shadow: none !important;
}
.n2e-group-post-textarea::-webkit-resizer {
	display: none !important;
}
.n2e-group-composer {
	background: var(--m02-panel, #152028) !important;
	border: 1px solid var(--m02-line, rgba(127, 220, 232, 0.4)) !important;
	border-bottom: 1px solid var(--m02-line, rgba(127, 220, 232, 0.4)) !important;
	padding: 12px 12px 10px !important;
	box-sizing: border-box !important;
	border-radius: 10px !important;
}
.n2e-group-composer-photo,
.n2e-group-composer-attach {
	color: var(--m02-cyan) !important;
	border: none !important;
	background: transparent !important;
}
.n2e-group-composer-attach {
	display: inline-flex !important;
	align-items: baseline;
	gap: 8px;
	cursor: pointer;
	user-select: none;
	padding: 2px 0;
	margin: 0;
	position: relative;
	z-index: 1;
}
.n2e-group-composer-attach-label {
	font-size: 0.78rem !important;
	font-weight: 500;
	color: var(--m02-cyan) !important;
}
.n2e-group-composer-attach-hint {
	font-size: 0.66rem !important;
	color: var(--m02-muted) !important;
	letter-spacing: 0.02em;
}
.n2e-group-composer-drop {
	position: relative;
	flex: 1 1 auto;
	min-width: 0;
	box-sizing: border-box;
	border: 1px solid transparent;
	padding: 2px 0;
	transition: min-height 0.18s ease, padding 0.18s ease, border-color 0.15s ease, background 0.15s ease;
}
.n2e-group-composer-drop-hint {
	display: none;
	font-size: 0.84rem !important;
	font-weight: 500;
	color: var(--m02-cyan) !important;
	letter-spacing: 0.02em;
	pointer-events: none;
	margin-top: 6px;
}
.n2e-group-composer-drop.is-drag {
	flex: 1 1 100%;
	min-height: 110px;
	padding: 22px 12px;
	border: 1px dashed var(--m02-cyan) !important;
	background: var(--m02-hover) !important;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
}
.n2e-group-composer-drop.is-drag .n2e-group-composer-drop-hint {
	display: block;
}
.n2e-group-composer-bar,
.n2e-group-composer-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}
.n2e-group-events-btn,
button.blbutton.n2e-group-events-btn,
button.n2e-group-btn.n2e-group-events-btn {
	/* Не перебивать display:inline-grid — один child .n2e-group-events-inner */
	margin-left: 0 !important;
	align-self: center !important;
	white-space: nowrap !important;
}
.n2e-group-events-inner {
	display: inline-flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px;
	line-height: 1 !important;
	transform: none !important;
}
.n2e-group-events-btn .n2e-group-events-label {
	display: inline-block !important;
	line-height: 1 !important;
	transform: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
.n2e-group-events-btn.is-active {
	border-color: var(--m02-cyan) !important;
	color: var(--m02-cyan) !important;
}
.n2e-group-events-count {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 auto !important;
	min-width: 1.25em;
	height: 1.15em;
	padding: 0 5px;
	border: 1px solid var(--m02-line);
	font-size: 0.72rem !important;
	line-height: 1 !important;
	color: var(--m02-text) !important;
	box-sizing: border-box;
	transform: none !important;
}
.n2e-group-events-list.is-reloading {
	opacity: 0.55;
	pointer-events: none;
	transition: opacity 0.12s ease;
}
.n2e-group-events-panel-body {
	margin-top: 10px;
	padding: 8px 0 4px;
	border-top: 1px solid var(--m02-line);
}
.n2e-group-events-panel-body .n2e-group-panel-head {
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
}
.n2e-group-events-panel-body .n2e-group-events-sort {
	margin-left: auto;
}
.n2e-group-events-scroll {
	max-height: min(52vh, 440px);
	overflow-y: auto;
	padding-right: 2px;
}
.n2e-group-events-sort .n2e-friends-scope-btn {
	font-size: 0.84rem !important;
}
.n2e-group-event-bg {
	position: fixed !important;
	inset: 0 !important;
	z-index: 35 !important;
	background: rgba(0, 0, 0, 0.72) !important;
	opacity: 1 !important;
	display: none;
	cursor: pointer;
	/* не наследовать .eventBackground opacity:0.1 */
	animation: none !important;
	transition: none !important;
}
.n2e-group-event-sheet {
	position: fixed !important;
	top: 4% !important;
	left: 50% !important;
	right: auto !important;
	margin: 0 !important;
	transform: translateX(-50%);
	z-index: 36 !important;
	display: none;
	max-height: 92vh;
	overflow-y: auto;
	width: min(600px, 94vw) !important;
	box-sizing: border-box;
	padding: 28px 28px 24px !important;
	text-align: left !important;
	background: var(--m02-panel) !important;
	border: 1px solid var(--m02-line) !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	color: var(--m02-text);
	font-family: var(--m02-font-ui);
	opacity: 1 !important;
	animation: none !important;
	transition: none !important;
}
.n2e-group-event-back {
	appearance: none;
	-webkit-appearance: none;
	position: absolute;
	left: 14px;
	top: 10px;
	z-index: 2;
	border: none;
	background: transparent;
	color: var(--m02-muted);
	font-size: 0.84rem;
	cursor: pointer;
	padding: 4px 2px;
}
.n2e-group-event-back:hover {
	color: var(--m02-cyan);
}
.n2e-group-event-sheet .n2e-icon-close.n2e-group-event-close {
	position: absolute;
	right: 10px;
	top: 10px;
	z-index: 2;
	width: 28px;
	height: 28px;
	border: none !important;
	background: transparent !important;
	color: var(--m02-muted) !important;
	opacity: 0.75;
}
.n2e-group-event-sheet .n2e-icon-close.n2e-group-event-close:hover {
	opacity: 1;
	color: var(--m02-cyan) !important;
}
.n2e-group-event-actions.n2e-event-sheet-actions {
	flex-direction: row !important;
	align-items: center !important;
	justify-content: flex-start !important;
	max-width: none !important;
	margin: 14px 0 0 !important;
	gap: 0;
}
.n2e-group-event-cal-link {
	display: inline-block;
	color: var(--m02-cyan) !important;
	font-size: 0.95rem !important;
	font-weight: 500;
	line-height: 1.35;
	text-decoration: none;
	border: none !important;
	background: transparent !important;
	padding: 0 !important;
	box-shadow: none !important;
}
.n2e-group-event-cal-link:hover {
	text-decoration: underline;
}
#n2eGroupConfirmBg.popupBackground,
#n2eGroupConfirmBg.n2e-confirm-bg,
#n2eLimitNoticeBg.popupBackground,
#n2eLimitNoticeBg.n2e-confirm-bg,
#n2eLimitNoticeBg.n2e-limit-notice-bg,
.popupBackground.n2e-confirm-bg {
	background: rgba(0, 0, 0, 0.78) !important;
	opacity: 1 !important;
	/* Над панелями события «Люди» / инвайта (12040–12050) */
	z-index: 13060 !important;
}
#n2eLimitNoticeBg.n2e-limit-notice-bg {
	/* Над DnD-оверлеем сообщений и общим .popupBackground (z-index 40) */
	z-index: 14060 !important;
	display: block !important;
	cursor: pointer;
}
.n2e-group-confirm.popupContacts,
#n2eGroupConfirm.n2e-group-confirm,
#n2eGroupConfirm.n2e-confirm-modal,
#n2eLimitNotice.n2e-confirm-modal,
#n2eLimitNotice.n2e-limit-notice,
.n2e-confirm-modal.popupContacts {
	z-index: 13070 !important;
	height: auto !important;
	min-height: 0 !important;
	width: 420px !important;
	min-width: min(420px, calc(100vw - 2rem)) !important;
	max-width: calc(100vw - 2rem) !important;
	padding: 22px 28px 20px !important;
	background: var(--m02-panel, #152028) !important;
	border: 1px solid var(--m02-line, rgba(127, 220, 232, 0.45)) !important;
	border-radius: 12px !important;
	box-shadow: 0 12px 36px rgba(0, 0, 0, 0.55) !important;
	color: var(--m02-text, #d7e6ee) !important;
	box-sizing: border-box !important;
}
#n2eLimitNotice.n2e-limit-notice {
	z-index: 14070 !important;
	display: block !important;
	top: 18% !important;
	left: 50% !important;
	transform: translate(-50%, 0) !important;
}
.n2e-group-confirm h4 {
	margin: 0 0 10px !important;
	padding: 0 !important;
	font-size: 1rem !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	color: var(--m02-text, #d7e6ee) !important;
	letter-spacing: 0.01em;
}
.n2e-group-confirm p {
	margin: 0 0 18px !important;
	padding: 0 !important;
	font-size: 0.88rem !important;
	line-height: 1.5 !important;
	color: var(--m02-muted, #9bb0bd) !important;
	white-space: normal !important;
}
.n2e-group-confirm .n2e-popup-actions {
	margin: 0 !important;
	display: flex !important;
	gap: 8px 10px !important;
	justify-content: center !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	width: 100% !important;
}
.n2e-group-confirm .n2e-popup-actions .blbutton {
	flex: 0 0 auto !important;
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	margin-top: 0 !important;
}
/* Участники / пикеры сообщений — ниже #n2eGroupConfirm (13060+), иначе «Да/Нет» под списком */
.popupBackground.n2e-confirm-bg.n2e-msg-overlay-bg,
.popupBackground.n2e-confirm-bg.n2e-msg-members-bg {
	z-index: 12300 !important;
}
.popupContacts.n2e-confirm-modal.n2e-msg-overlay-modal,
.popupContacts.n2e-confirm-modal.n2e-msg-members-modal {
	z-index: 12310 !important;
}
#n2eGroupConfirmBg.popupBackground {
	background: rgba(0, 0, 0, 0.78) !important;
	opacity: 1 !important;
}
.n2e-group-composer-preview {
	background: transparent !important;
	border: none !important;
	color: var(--m02-text) !important;
	padding: 0 !important;
}
.n2e-group-composer-preview-open {
	border-color: var(--m02-line) !important;
	background: rgba(0, 0, 0, 0.2) !important;
}
.n2e-group-composer-preview-rm {
	color: var(--m02-muted) !important;
	background: var(--m02-panel) !important;
	border-color: var(--m02-line) !important;
}
.n2e-group-composer-preview-rm:hover {
	color: #c45b5b !important;
	border-color: #c45b5b !important;
}
.n2e-group-composer-previews.has-previews,
.n2e-group-post-images.n2e-ug-rail-row {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: flex-start !important;
	width: 100%;
	box-sizing: border-box;
}
.n2e-group-composer-previews .n2e-group-composer-rail,
.n2e-group-post-images .n2e-group-post-rail {
	flex: 1 1 0 !important;
	min-width: 0 !important;
	width: 0 !important;
	max-width: 100%;
}
.n2e-group-post-img-link {
	border: 1px solid var(--m02-line) !important;
	background: rgba(0, 0, 0, 0.2) !important;
	width: 40px !important;
	height: 40px !important;
	flex: 0 0 40px !important;
	overflow: hidden;
}
img.n2e-group-post-img,
.n2e-group-composer-preview-img {
	cursor: zoom-in;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	object-fit: contain !important;
	object-position: center !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-sizing: border-box !important;
}
.show-hide-additional_info,
.n2e-group-manage-toggle,
.n2e-group-settings-bar {
	background: transparent !important;
	color: var(--m02-cyan) !important;
	border: none !important;
	box-shadow: none !important;
}

.password,
.showpassword {
	box-shadow: none !important;
	border-radius: 8px !important;
}
.messagebox,
.messageboxok,
.messageboxerror,
.messageboxactivated,
.messagebox_admin,
.messageboxok_admin,
.messageboxerror_admin,
.messageboxactivated_admin {
	box-shadow: none !important;
	border-radius: 10px !important;
	font-family: var(--m02-font-ui);
	font-size: 0.7rem !important;
	font-weight: 500 !important;
	padding: 4px 8px !important;
	z-index: 5;
}
.messagebox,
.messageboxactivated,
.messageboxactivated_admin,
.messagebox_admin {
	background: var(--m02-panel) !important;
	border: 1px solid var(--m02-line) !important;
	color: var(--m02-muted) !important;
}
.messageboxok,
.messageboxok_admin {
	background: rgba(46, 125, 79, 0.15) !important;
	border: 1px solid rgba(46, 125, 79, 0.45) !important;
	color: #6fcf97 !important;
}
.messageboxerror,
.messageboxerror_admin {
	background: rgba(180, 35, 24, 0.14) !important;
	border: 1px solid rgba(180, 35, 24, 0.45) !important;
	color: #f97066 !important;
}
html[data-n2e-theme="light"] .messageboxok,
html[data-n2e-theme="light"] .messageboxok_admin {
	color: #1b7a45 !important;
}
html[data-n2e-theme="light"] .messageboxerror,
html[data-n2e-theme="light"] .messageboxerror_admin {
	color: #b42318 !important;
}

/* Подсказка критериев пароля */
#pswd_info {
	background: var(--m02-panel) !important;
	border: 1px solid var(--m02-line) !important;
	box-shadow: none !important;
	color: var(--m02-text) !important;
	border-radius: 10px !important;
}
#pswd_info h4 {
	color: var(--m02-muted) !important;
}
#pswd_info ul,
#pswd_info li {
	color: var(--m02-text) !important;
	padding-left: 0 !important;
	line-height: 1.45 !important;
}
#pswd_info #container span,
#pswd_info span {
	background: transparent !important;
	color: inherit !important;
	padding: 0 !important;
	margin: 0 !important;
	display: inline !important;
	border-radius: 0 !important;
}
#pswd_info .invalid {
	color: var(--m02-muted) !important;
	padding-left: 0 !important;
}
#pswd_info .valid {
	color: #6fcf97 !important;
	padding-left: 0 !important;
}
html[data-n2e-theme="light"] #pswd_info .valid {
	color: #1b7a45 !important;
}
.password-control {
	color: var(--m02-cyan) !important;
	font-size: 0.84rem !important;
}

#n2eViewLoading,
.n2e-view-loading,
.n2e-view-progress {
	box-shadow: none !important;
	filter: none !important;
	background: var(--m02-line) !important;
	max-width: 660px;
}
.n2e-view-progress-bar {
	background: var(--m02-cyan) !important;
}
.n2e-is-loading {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	filter: none !important;
	min-height: 40px !important;
	padding: 8px 0 !important;
}

.content a,
.contentForm a,
.admin_panel a,
.redirectUser a {
	color: var(--m02-cyan);
}

/* —— Лист просмотра события —— */
.event-specific {
	padding: 28px 28px 24px !important;
	text-align: left !important;
}
.n2e-event-sheet {
	max-width: 520px;
	margin: 8px auto 0;
}
.n2e-event-sheet-head {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 14px;
	padding-bottom: 10px;
	border-bottom: 1px solid var(--m02-line);
}
.n2e-event-sheet-avatar-wrap {
	flex: 0 0 112px;
	width: 112px;
	min-height: 112px;
}
.n2e-event-sheet-avatar-wrap .n2e-event-sheet-avatar {
	width: 112px !important;
	height: 112px !important;
	min-height: 112px;
}
.n2e-event-sheet-head-text {
	flex: 1 1 auto;
	min-width: 0;
}
.n2e-event-sheet-title-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 8px;
}
.n2e-event-sheet-title {
	flex: 1 1 auto;
	min-width: 0;
	font-size: 0.98rem;
	font-weight: 600;
	line-height: 1.3;
	color: var(--m02-text);
	margin: 0;
	padding: 0;
	border: none;
}
.n2e-event-sheet-subs,
.n2e-event-sheet-title-row .n2e-ev-subs-count {
	flex: 0 0 auto;
	margin: 2px 0 0;
	white-space: nowrap;
	font-size: 0.78rem;
	line-height: 1.3;
}
.n2e-event-sheet-head-text .dayEventCardMine {
	margin: 0 0 8px;
	align-self: flex-start;
	width: auto;
	max-width: max-content;
	flex: 0 0 auto;
}
.n2e-event-sheet-owner {
	margin: 0 0 8px;
	font-size: 0.9rem;
	line-height: 1.35;
}
.n2e-event-sheet-owner .userLink {
	font-weight: 600;
	color: var(--m02-cyan);
}
.n2e-event-sheet-date,
.n2e-event-sheet-when {
	font-size: 0.88rem;
	letter-spacing: 0.04em;
	text-transform: none;
	color: var(--m02-text);
	margin: 0;
	line-height: 1.35;
}
.n2e-event-sheet-when-time {
	margin-left: 10px;
	white-space: nowrap;
}
.n2e-event-sheet-gallery {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 8px;
	margin: 0 0 14px;
	width: 100%;
	box-sizing: border-box;
}
.n2e-event-sheet-grid {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 10px 16px;
	margin-bottom: 14px;
}
.n2e-event-sheet-grid--table {
	flex-direction: column;
	gap: 8px;
}
.n2e-event-sheet-grid--table .n2e-event-meta {
	display: grid;
	grid-template-columns: 7.6rem minmax(0, 1fr);
	gap: 4px 10px;
	align-items: baseline;
}
.n2e-event-sheet-grid--table .n2e-event-k {
	margin-bottom: 0;
}
.n2e-event-sheet-col {
	flex: 1 1 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.n2e-event-meta-wide {
	grid-column: 1 / -1;
}
.n2e-event-k {
	display: block;
	font-size: 0.78rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--m02-muted);
	margin-bottom: 2px;
}
.n2e-event-v {
	display: block;
	font-size: 0.95rem;
	color: var(--m02-text);
}
.n2e-event-v .userLink,
.n2e-event-v a.userLink {
	font-weight: 600;
	color: var(--m02-cyan);
}
.n2e-event-sheet-desc {
	font-size: 0.95rem;
	line-height: 1.45;
	color: var(--m02-text);
	white-space: pre-wrap;
	padding: 12px 0 6px;
	border-top: 1px solid var(--m02-line);
}
.n2e-event-sheet-actions {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 8px;
	max-width: 320px;
	margin: 20px auto 0;
}
.n2e-event-sheet-actions .blbutton {
	width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box;
}
.n2e-btn-danger:hover {
	border-color: #c45b5b !important;
	color: #c45b5b !important;
}
.event-specific .backLink-event,
.event-specific .modalClose:before,
.event-specific .modalClose:after {
	color: var(--m02-muted);
}
.event-specific .modalClose:before,
.event-specific .modalClose:after,
.popupClose:before,
.popupClose:after,
.modalCloseEditUser:before,
.modalCloseEditUser:after {
	background-color: var(--m02-muted) !important;
}
.userLink {
	color: var(--m02-cyan) !important;
	text-decoration: none;
}

/* —— Создание / правка события —— */
.modalElement,
.event-specific {
	color: var(--m02-text) !important;
}
.themeEventDiv {
	z-index: 5 !important;
	background: var(--m02-panel) !important;
	border: 1px solid var(--m02-line) !important;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35) !important;
}
.themeEventSpan {
	background: transparent !important;
	color: var(--m02-text) !important;
	border-bottom: 1px solid var(--m02-line) !important;
}
.themeEventSpan:last-child {
	border-bottom: none !important;
}
.themeEventSpan:hover {
	background: var(--m02-cyan-soft) !important;
	color: var(--m02-cyan) !important;
}
.forThemeEvent {
	color: var(--m02-muted);
}
#forThemeEvent.forThemeEvent--set {
	color: var(--m02-text) !important;
}

/* Аватар события + галерея */
.n2e-event-avatar,
.n2e-event-avatar-form,
.n2e-event-sheet-avatar,
.n2e-group-event-avatar {
	width: 72px;
	height: 72px;
	flex-shrink: 0;
	object-fit: contain;
	object-position: center;
	border-radius: 10px;
	border: 1px solid var(--m02-line);
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--m02-panel);
	margin: 0;
	vertical-align: top;
	overflow: hidden;
}
.dayEventCardInner {
	display: flex !important;
	align-items: flex-start !important;
	gap: 12px !important;
}
.dayEventCardAvatar {
	flex-shrink: 0 !important;
}
.dayEventCardAvatar .n2e-event-avatar,
.dayEventCardAvatar .n2e-event-avatar-empty {
	width: 88px !important;
	height: 88px !important;
}
.n2e-group-events .n2e-group-event-avatar {
	width: 44px !important;
	height: 44px !important;
}
.dayEventCardBody {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	display: block !important;
}
.dayEventCardMain {
	min-width: 0;
	width: 100%;
}
.dayEventCardTitle {
	display: -webkit-box !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: 2 !important;
	overflow: hidden !important;
	word-break: break-word !important;
}
.dayEventCardMeta {
	display: -webkit-box !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: 1 !important;
	overflow: hidden !important;
}
.dayEventCardDesc {
	display: -webkit-box !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: 2 !important;
	overflow: hidden !important;
	word-break: break-word !important;
	white-space: normal !important;
}
.dayEventCardFoot {
	display: -webkit-box !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: 2 !important;
	overflow: hidden !important;
	word-break: break-word !important;
	white-space: normal !important;
	max-width: 100% !important;
}
.n2e-event-avatar-form,
.n2e-event-sheet-avatar {
	width: 112px !important;
	height: 112px !important;
	min-height: 112px;
}
.n2e-event-avatar-form.n2e-event-avatar-empty,
.n2e-event-sheet-avatar.n2e-event-avatar-empty {
	font-size: 1.25rem;
}
img.n2e-event-avatar,
img.n2e-event-avatar-form,
img.n2e-event-sheet-avatar,
img.n2e-event-gallery-thumb,
img.n2e-group-event-avatar {
	cursor: zoom-in;
}
.n2e-event-avatar-drop img.n2e-event-avatar-form {
	cursor: pointer;
}
.n2e-event-avatar-empty {
	color: var(--m02-muted);
	font-size: 0.95rem;
	font-weight: 600;
	letter-spacing: 0.04em;
}
.n2e-event-avatar-initials {
	line-height: 1;
	user-select: none;
}
.n2e-event-form-title {
	margin: 0 0 4px !important;
	padding: 0 !important;
	text-align: center !important;
	width: 100%;
	font-size: inherit;
	font-weight: inherit;
}
.n2e-event-form-title-input {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 8px 4px 10px !important;
	border: none !important;
	border-bottom: 1px solid var(--m02-line) !important;
	background: transparent !important;
	color: var(--m02-text) !important;
	font-family: var(--m02-font-ui, inherit) !important;
	font-size: 1.45rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.01em;
	line-height: 1.25 !important;
	text-align: center !important;
	box-sizing: border-box;
	outline: none;
}
.n2e-event-form-title-input::placeholder {
	color: var(--m02-muted);
	font-weight: 700;
	opacity: 0.85;
	text-align: center;
}
.n2e-event-form-title-input:focus {
	border-bottom-color: var(--m02-cyan);
}
.n2e-event-form {
	max-width: 520px;
	margin: 40px auto 12px;
	padding: 0 6px 8px;
	text-align: center;
	box-sizing: border-box;
}
.modalElement > .n2e-event-form,
.event-specific > .n2e-event-form {
	margin-top: 40px;
}
.modalElement:has(> .saveDataEventDiv) > .n2e-event-form {
	margin-top: 12px;
}
/* Аватар + поля + категория: категория на всю ширину сразу под адресом */
.n2e-event-form-top {
	display: grid;
	grid-template-columns: 96px minmax(0, 1fr);
	grid-template-rows: auto auto auto auto;
	column-gap: 18px;
	row-gap: 8px;
	align-items: start;
	margin: 0 0 8px;
	text-align: center;
}
.n2e-event-form-top > .n2e-event-form-avatar-col {
	grid-column: 1;
	grid-row: 1 / 4;
	padding-top: 2px;
}
.n2e-event-form-top > .n2e-event-form-title {
	grid-column: 2;
	grid-row: 1;
}
.n2e-event-form-top > .n2e-event-datetime-row {
	grid-column: 2;
	grid-row: 2;
	gap: 10px;
	margin: 0;
}
.n2e-event-form-top > .n2e-event-form-address-wrap,
.n2e-event-form-top > .n2e-event-form-address,
.n2e-event-form-top > #addressEvent {
	grid-column: 2;
	grid-row: 3;
	min-width: 0;
}
.n2e-event-form-top > .n2e-event-form-category {
	grid-column: 1 / -1;
	grid-row: 4;
}
.n2e-event-form-head {
	display: flex;
	align-items: flex-start;
	gap: 18px;
	margin: 0 0 18px;
	text-align: center;
}
.n2e-event-form-head > .n2e-event-form-avatar-col {
	flex: 0 0 96px;
	padding-top: 2px;
}
.n2e-event-form-head-fields {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	gap: 10px;
}
.n2e-event-form-top .eventForm,
.n2e-event-form-top .dateEventForm,
.n2e-event-form-top .timeEventForm,
.n2e-event-form-top #addressEvent,
.n2e-event-form-head-fields .eventForm,
.n2e-event-form-head-fields .dateEventForm,
.n2e-event-form-head-fields .timeEventForm,
.n2e-event-form-head-fields #addressEvent {
	float: none !important;
	display: block !important;
	margin: 0 !important;
	padding: 5px 0 !important;
	width: 100% !important;
	max-width: none !important;
	min-height: 0 !important;
	height: auto !important;
	text-align: center !important;
	box-sizing: border-box !important;
	position: static !important;
	font-size: 0.9rem !important;
	font-family: var(--m02-font-input, inherit) !important;
	color: var(--m02-text) !important;
}
.n2e-event-form-top .n2e-event-datetime-row .eventForm,
.n2e-event-form-head-fields .n2e-event-datetime-row .eventForm {
	width: auto !important;
	padding: 5px 4px !important;
}
.n2e-event-form-top .n2e-event-form-title,
.n2e-event-form-top .n2e-event-form-title-input,
.n2e-event-form-head-fields .n2e-event-form-title,
.n2e-event-form-head-fields .n2e-event-form-title-input {
	text-align: center !important;
	font-weight: 700 !important;
}
.n2e-event-form-category {
	position: relative;
	display: block !important;
	margin: 0 !important;
	text-align: center;
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box;
}
.n2e-event-form-category #forThemeEvent {
	display: block !important;
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	padding: 5px 0 !important;
	text-align: center !important;
	font-size: 0.9rem !important;
}
.n2e-event-form-category .themeEventDiv {
	position: absolute !important;
	top: 100% !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 !important;
}
.n2e-event-avatar-drop {
	position: relative;
	flex: 0 0 96px;
	width: 96px;
	align-self: center;
	display: flex;
	flex-direction: column;
	cursor: pointer;
	outline: none;
}
.n2e-event-avatar-file {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}
#n2eEventAvatarPreview {
	width: 96px;
	height: 96px;
	display: flex;
	align-items: stretch;
	pointer-events: none;
}
#n2eEventAvatarPreview .n2e-event-avatar-form,
#n2eEventAvatarPreview .n2e-event-avatar-empty {
	width: 96px !important;
	height: 96px !important;
	min-height: 96px;
	pointer-events: none;
}
.n2e-event-avatar-drop.is-drag .n2e-event-avatar-form,
.n2e-event-avatar-drop.is-drag .n2e-event-avatar-empty {
	border-color: var(--m02-cyan);
	background: var(--m02-hover);
}
.n2e-event-avatar-change {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	margin: 0;
	padding: 4px 0;
	border: 0;
	border-radius: 0 0 4px 4px;
	background: rgba(0, 0, 0, 0.55);
	color: #fff;
	font-family: inherit;
	font-size: 0.58rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	cursor: pointer;
	opacity: 0;
	transition: opacity 0.15s ease;
	pointer-events: auto;
}
.n2e-event-avatar-drop.has-file:hover .n2e-event-avatar-change,
.n2e-event-avatar-drop.has-file:focus-within .n2e-event-avatar-change,
.n2e-event-avatar-change:focus {
	opacity: 1;
}
.n2e-event-avatar-change[hidden] {
	display: none !important;
}
.n2e-event-avatar-hint {
	display: block;
	margin-top: 4px;
	font-size: 0.62rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--m02-muted);
	text-align: center;
	pointer-events: none;
}
.n2e-event-avatar-remove {
	position: absolute;
	top: -4px;
	right: -4px;
	width: 20px;
	height: 20px;
	padding: 0;
	border: 1px solid var(--m02-line);
	border-radius: 50%;
	background: var(--m02-panel);
	color: transparent;
	font-size: 0;
	line-height: 0;
	cursor: pointer;
	z-index: 2;
	pointer-events: auto;
}
.n2e-event-avatar-remove::before,
.n2e-event-avatar-remove::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 2px;
	height: 10px;
	background: var(--m02-muted);
	transform-origin: center center;
}
.n2e-event-avatar-remove::before {
	transform: translate(-50%, -50%) rotate(45deg);
}
.n2e-event-avatar-remove::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}
.n2e-event-avatar-remove:hover {
	border-color: #c45b5b;
}
.n2e-event-avatar-remove:hover::before,
.n2e-event-avatar-remove:hover::after {
	background: #c45b5b;
}
.n2e-event-time-row,
.n2e-event-datetime-row {
	display: flex;
	gap: 8px;
	width: 100%;
	align-items: stretch;
}
.n2e-event-time-row .timeEventForm,
.n2e-event-datetime-row .timeEventForm,
.n2e-event-datetime-row .dateEventForm {
	flex: 1 1 0;
	min-width: 0;
	width: auto !important;
	float: none !important;
	margin: 0 !important;
}
.n2e-event-datetime-row .dateEventForm {
	flex: 1.15 1 0;
	color: var(--m02-text) !important;
	opacity: 1 !important;
}
/* Нативный date иначе мельче и серее, чем текстовое время — выравниваем внутренний текст. */
.n2e-event-datetime-row .dateEventForm,
.n2e-event-datetime-row .timeEventForm {
	font-size: 0.9rem !important;
	font-weight: 400 !important;
	line-height: 1.35 !important;
	color: var(--m02-text) !important;
}
.n2e-event-datetime-row .dateEventForm::-webkit-datetime-edit,
.n2e-event-datetime-row .dateEventForm::-webkit-datetime-edit-fields-wrapper,
.n2e-event-datetime-row .dateEventForm::-webkit-datetime-edit-text,
.n2e-event-datetime-row .dateEventForm::-webkit-datetime-edit-month-field,
.n2e-event-datetime-row .dateEventForm::-webkit-datetime-edit-day-field,
.n2e-event-datetime-row .dateEventForm::-webkit-datetime-edit-year-field,
.n2e-event-datetime-row .timeEventForm::-webkit-datetime-edit,
.n2e-event-datetime-row .timeEventForm::-webkit-datetime-edit-fields-wrapper,
.n2e-event-datetime-row .timeEventForm::-webkit-datetime-edit-text,
.n2e-event-datetime-row .timeEventForm::-webkit-datetime-edit-hour-field,
.n2e-event-datetime-row .timeEventForm::-webkit-datetime-edit-minute-field {
	font-size: 0.9rem;
	font-weight: 400;
	line-height: 1.35;
	color: var(--m02-text);
	opacity: 1;
}
.n2e-event-form-stack {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0 0 4px;
	padding: 0;
}
.n2e-event-form-address-wrap,
.n2e-event-form-desc-wrap {
	min-width: 0;
}
/* Счётчик символов — сразу под полем, не отдельной ячейкой сетки. */
.n2e-event-form .spanForLimitSymbolEvent,
.n2e-event-form-title .spanForLimitSymbolEvent,
.n2e-event-form-address-wrap .spanForLimitSymbolEvent,
.n2e-event-form-desc-wrap .spanForLimitSymbolEvent {
	display: block;
	margin: 2px 0 0;
	padding: 0;
	line-height: 1.3;
	text-align: center;
	font-size: 0.72rem;
	font-family: var(--m02-font-ui, inherit);
}
.n2e-event-form-section {
	margin: 0;
	padding: 0;
}
.n2e-event-form .eventForm,
.n2e-event-form #forThemeEvent,
.n2e-event-form #confidencialEvent {
	float: none !important;
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 5px 0 !important;
	text-align: center !important;
	box-sizing: border-box !important;
	font-size: 0.9rem !important;
}
.n2e-event-form #confidencialEvent {
	padding: 5px 0 !important;
}
.n2e-event-form #confidencialEvent .confidencialEventP {
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.4 !important;
	font-size: 0.9rem !important;
}
.n2e-event-form #forThemeEvent {
	cursor: pointer;
	padding: 5px 0 !important;
	font-size: 0.9rem !important;
}
.event-specific .descriptionEventForm,
.modalElement .descriptionEventForm,
.n2e-event-form .descriptionEventForm,
textarea.form-control.descriptionEventForm,
textarea.descriptionEventForm {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	margin: 4px 0 8px !important;
	box-sizing: border-box !important;
	text-align: left !important;
	min-height: 120px !important;
	height: auto !important;
	max-height: none !important;
	padding: 12px 14px !important;
	border: 1px solid var(--m02-line) !important;
	border-bottom: 1px solid var(--m02-line) !important;
	border-radius: 0 !important;
	background: var(--m02-input-bg, transparent) !important;
	color: var(--m02-text) !important;
	resize: none !important;
	overflow: auto !important;
	overflow-y: auto !important;
	font-size: 0.9rem !important;
	line-height: 1.45 !important;
	box-shadow: none !important;
	outline: none !important;
	appearance: none !important;
	-webkit-appearance: none !important;
}
.event-specific .descriptionEventForm:focus,
.modalElement .descriptionEventForm:focus,
.n2e-event-form .descriptionEventForm:focus,
textarea.form-control.descriptionEventForm:focus,
textarea.descriptionEventForm:focus {
	border-color: var(--m02-cyan) !important;
	border-bottom-color: var(--m02-cyan) !important;
	box-shadow: 0 0 0 1px var(--m02-cyan) !important;
}
.event-specific .descriptionEventForm::-webkit-resizer,
.modalElement .descriptionEventForm::-webkit-resizer,
textarea.form-control.descriptionEventForm::-webkit-resizer,
textarea.descriptionEventForm::-webkit-resizer,
textarea.n2e-autosize-ta::-webkit-resizer {
	display: none !important;
	width: 0 !important;
	height: 0 !important;
}
textarea.n2e-autosize-ta:not(.descriptionEventForm) {
	resize: none !important;
}
.dayEventElement--mine {
	border-color: var(--m02-cyan) !important;
	box-shadow: inset 3px 0 0 var(--m02-cyan) !important;
}
.dayEventCardMine {
	display: inline-block;
	margin: 0 0 4px;
	padding: 1px 6px;
	font-size: 0.62rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--m02-cyan);
	border: 1px solid var(--m02-cyan);
	border-radius: 6px;
	line-height: 1.3;
}
.n2e-event-sheet-gallery {
	margin: 4px 0 12px !important;
}
.n2e-event-sheet-grid {
	gap: 6px 12px !important;
	margin-bottom: 10px !important;
}
.n2e-event-sheet-grid--table {
	gap: 8px !important;
}
.n2e-event-sheet-col {
	gap: 6px !important;
}

/* Общие центрированные иконки X / шеврона */
.n2e-icon-close,
.n2e-icon-nav {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	margin: 0;
	border: 1px solid rgba(255,255,255,0.45);
	border-radius: 10px;
	background: rgba(18, 24, 30, 0.88);
	color: #fff;
	cursor: pointer;
	box-sizing: border-box;
	font-size: 0;
	line-height: 0;
}
.n2e-icon-close {
	width: 36px;
	height: 36px;
}
.n2e-icon-close::before,
.n2e-icon-close::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 2px;
	height: 16px;
	background: currentColor;
	transform-origin: center center;
}
.n2e-icon-close::before {
	transform: translate(-50%, -50%) rotate(45deg);
}
.n2e-icon-close::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}
.n2e-icon-nav {
	width: 44px;
	height: 44px;
}
.n2e-icon-nav::before {
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	box-sizing: border-box;
}
.n2e-icon-nav-prev::before {
	transform: translateX(2px) rotate(135deg);
}
.n2e-icon-nav-next::before {
	transform: translateX(-2px) rotate(-45deg);
}
.n2e-avatar-lightbox-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 5;
}
.n2e-avatar-lightbox-prev { left: 16px; }
.n2e-avatar-lightbox-next { right: 16px; }
.n2e-avatar-lightbox-nav:hover {
	border-color: var(--m02-cyan);
	color: var(--m02-cyan);
}
.n2e-avatar-lightbox-close {
	position: absolute;
	top: 16px;
	right: 16px;
	z-index: 10;
	width: 36px;
	height: 36px;
	border-radius: 10px;
	border-color: rgba(255, 255, 255, 0.55);
	background: rgba(18, 24, 30, 0.94);
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
	pointer-events: auto;
}
.n2e-avatar-lightbox-expand {
	position: absolute;
	top: 16px;
	right: 60px;
	z-index: 10;
	width: 36px;
	height: 36px;
	padding: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	border: 1px solid rgba(255, 255, 255, 0.55);
	background: rgba(18, 24, 30, 0.94);
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
	color: rgba(255, 255, 255, 0.9);
	cursor: pointer;
	pointer-events: auto;
	box-sizing: border-box;
}
.n2e-avatar-lightbox-expand:hover {
	border-color: var(--m02-cyan);
	color: var(--m02-cyan);
}
.n2e-avatar-lightbox-expand .n2e-lb-collapse-ico {
	display: none;
}
.n2e-avatar-lightbox--expanded .n2e-avatar-lightbox-expand .n2e-lb-expand-ico {
	display: none;
}
.n2e-avatar-lightbox--expanded .n2e-avatar-lightbox-expand .n2e-lb-collapse-ico {
	display: block;
}
.n2e-avatar-lightbox-close:hover {
	border-color: var(--m02-cyan);
	color: var(--m02-cyan);
}
.n2e-avatar-lightbox-count {
	position: static;
	left: auto;
	bottom: auto;
	transform: none;
	z-index: 1;
	font-size: 0.85rem;
	letter-spacing: 0.04em;
	color: rgba(255,255,255,0.9);
	pointer-events: none;
	text-shadow: 0 1px 2px rgba(0,0,0,0.6);
}
.n2e-avatar-lightbox-footer {
	position: absolute;
	left: 50%;
	bottom: 20px;
	transform: translateX(-50%);
	z-index: 5;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	pointer-events: none;
}
.n2e-avatar-lightbox-del {
	pointer-events: auto;
	appearance: none;
	margin: 0;
	padding: 8px 18px;
	border: 1px solid rgba(196, 91, 91, 0.85);
	border-radius: 10px;
	background: rgba(20, 10, 10, 0.72);
	color: #f0b4b4;
	font-family: inherit;
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.02em;
	cursor: pointer;
	line-height: 1.2;
}
.n2e-avatar-lightbox-del:hover {
	border-color: #c45b5b;
	color: #fff;
	background: rgba(120, 40, 40, 0.55);
}
.n2e-avatar-lightbox-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 5;
	width: 40px;
	height: 40px;
}
.n2e-avatar-lightbox-rail {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	max-width: min(96vw, 1180px);
	width: 100%;
	pointer-events: none;
}
.n2e-avatar-lightbox--multi .n2e-avatar-lightbox-rail {
	/* Общий лайтбокс (чат / профиль / группы / события): слоты не прыгают */
	display: grid;
	grid-template-columns: min(14vw, 140px) minmax(0, 1fr) min(14vw, 140px);
	align-items: center;
	justify-items: center;
	width: min(98vw, 1480px);
	max-width: 98vw;
}
.n2e-avatar-lightbox-rail > * {
	pointer-events: auto;
}
.n2e-avatar-lightbox-side {
	flex: 0 0 auto;
	width: min(18vw, 160px);
	height: min(42vh, 280px);
	padding: 0;
	border: 1px solid rgba(255,255,255,0.2);
	background: rgba(0,0,0,0.35);
	cursor: pointer;
	overflow: hidden;
	opacity: 0.55;
	transition: opacity 0.15s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	align-self: center;
}
.n2e-avatar-lightbox-side:hover {
	opacity: 0.85;
}
.n2e-avatar-lightbox-side.is-disabled,
.n2e-avatar-lightbox-nav.is-disabled {
	opacity: 0 !important;
	visibility: hidden;
	pointer-events: none;
	cursor: default;
}
.n2e-avatar-lightbox-side img[hidden] {
	display: none !important;
}
.n2e-avatar-lightbox-side img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
@media (max-width: 720px), (max-device-width: 720px) {
	.n2e-avatar-lightbox-side {
		display: none;
	}
	.n2e-avatar-lightbox--multi .n2e-avatar-lightbox-rail {
		display: flex;
		grid-template-columns: none;
	}
	.n2e-avatar-lightbox-stage,
	.n2e-avatar-lightbox-img {
		max-width: min(92vw, 900px);
		max-height: 80vh;
	}
}
.n2e-avatar-lightbox-stage {
	position: relative;
	z-index: 1;
	flex: 0 1 auto;
	display: inline-block;
	max-width: min(86vw, 1200px);
	max-height: 88vh;
	line-height: 0;
}
.n2e-avatar-lightbox--multi .n2e-avatar-lightbox-stage {
	width: 100%;
	max-width: min(82vw, 1200px);
	height: min(88vh, 960px);
	max-height: min(88vh, 960px);
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
}
.n2e-avatar-lightbox--expanded {
	padding: 6px;
}
.n2e-avatar-lightbox--expanded .n2e-avatar-lightbox-bg {
	background: rgba(0, 0, 0, 0.88);
}
/* Разворот: не grid и не stage width:100% — иначе img уезжает влево */
.n2e-avatar-lightbox--expanded .n2e-avatar-lightbox-rail,
.n2e-avatar-lightbox--expanded.n2e-avatar-lightbox--multi .n2e-avatar-lightbox-rail {
	position: absolute;
	inset: 0;
	z-index: 1;
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 0;
	width: auto !important;
	max-width: none !important;
	margin: 0;
	padding: 0;
	grid-template-columns: none !important;
	pointer-events: none;
}
.n2e-avatar-lightbox--expanded .n2e-avatar-lightbox-side {
	display: none !important;
}
.n2e-avatar-lightbox--expanded .n2e-avatar-lightbox-stage,
.n2e-avatar-lightbox--expanded.n2e-avatar-lightbox--multi .n2e-avatar-lightbox-stage {
	position: relative;
	width: auto !important;
	max-width: 98vw !important;
	height: auto !important;
	max-height: 96vh !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	margin: 0 !important;
	pointer-events: auto;
	box-sizing: border-box;
	overflow: visible;
}
.n2e-avatar-lightbox--expanded:not(.n2e-avatar-lightbox--zoomed) .n2e-avatar-lightbox-img,
.n2e-avatar-lightbox--expanded.n2e-avatar-lightbox--multi:not(.n2e-avatar-lightbox--zoomed) .n2e-avatar-lightbox-img,
.n2e-avatar-lightbox--expanded:not(.n2e-avatar-lightbox--multi):not(.n2e-avatar-lightbox--zoomed) .n2e-avatar-lightbox-img {
	/* Не растягивать raster на весь экран — иначе Excel-скрин мылится. */
	max-width: 98vw !important;
	max-height: 96vh !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	margin: 0 !important;
	cursor: zoom-out;
	transform-origin: center center;
}
/* Зум + pan: сцена на весь экран; размер картинки — inline из JS */
.n2e-avatar-lightbox--zoomed .n2e-avatar-lightbox-stage,
.n2e-avatar-lightbox--zoomed.n2e-avatar-lightbox--multi .n2e-avatar-lightbox-stage,
.n2e-avatar-lightbox--expanded.n2e-avatar-lightbox--zoomed .n2e-avatar-lightbox-stage {
	position: absolute !important;
	inset: 0 !important;
	width: auto !important;
	height: auto !important;
	max-width: none !important;
	max-height: none !important;
	overflow: hidden !important;
	margin: 0 !important;
	pointer-events: auto;
}
.n2e-avatar-lightbox--zoomed .n2e-avatar-lightbox-img {
	max-width: none !important;
	max-height: none !important;
	object-fit: fill;
	margin: 0 !important;
	cursor: grab;
	user-select: none;
	-webkit-user-drag: none;
	will-change: transform;
	transform-origin: center center;
}
.n2e-avatar-lightbox--zoomed .n2e-avatar-lightbox-img:active {
	cursor: grabbing;
}
.n2e-avatar-lightbox-img {
	cursor: zoom-in;
}
.n2e-event-sheet-avatar-wrap {
	flex: 0 0 112px;
	width: 112px;
	min-height: 112px;
}
.n2e-event-sheet-avatar-wrap .n2e-event-sheet-avatar {
	width: 112px !important;
	height: 112px !important;
	min-height: 112px;
}
.n2e-event-gallery {
	max-width: 560px;
	margin: 8px auto 10px;
	text-align: left;
}
.n2e-event-form .n2e-event-gallery {
	max-width: none;
	margin: 14px 0 16px;
	display: flex;
	flex-direction: column;
	align-items: stretch;
}
.n2e-event-gallery-row {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	gap: 8px !important;
	width: 100%;
	box-sizing: border-box;
	transition: min-height 0.18s ease;
}
.n2e-event-gallery-row.is-drag {
	min-height: 110px;
}
.n2e-event-gallery-row.is-drag .n2e-event-gallery-side {
	min-height: 100px !important;
	max-height: none !important;
	pointer-events: auto;
	opacity: 1;
}
.n2e-event-form-rail {
	flex: 1 1 0 !important;
	min-width: 0 !important;
	width: 0 !important;
	padding: 4px 3px !important;
	border-color: rgba(127, 220, 232, 0.28) !important;
	background: rgba(0, 0, 0, 0.18) !important;
}
.n2e-event-form .n2e-ug-rail-btn {
	height: 40px !important;
}
.n2e-event-form .n2e-event-gallery-side.n2e-ug-side-drop {
	flex: 0 0 auto !important;
	align-self: stretch !important;
	display: flex !important;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 88px !important;
	min-width: 88px;
	min-height: 48px !important;
	height: auto !important;
	max-height: none !important;
	padding: 6px 8px !important;
	box-sizing: border-box;
	border: 1px dashed var(--m02-line, rgba(127, 220, 232, 0.4)) !important;
	background: transparent !important;
}
.n2e-event-form .n2e-event-gallery-side.n2e-ug-side-drop:hover {
	border-color: var(--m02-cyan, #7fdce8) !important;
}
.n2e-event-gallery-side.is-full {
	opacity: 0.45;
	pointer-events: none;
}
.n2e-event-gallery-side .n2e-ug-side-drop-label.n2e-ug-side-drop-cam {
	line-height: 0 !important;
	color: var(--m02-cyan, #7fdce8) !important;
}
.n2e-event-gallery-side .n2e-ug-side-drop-hint {
	display: block !important;
	margin-top: 4px;
	font-size: 0.68rem !important;
	color: var(--m02-muted, #7a93a3) !important;
}
/* Миниатюры rail формы = галерея / группа (40px), не лист (56px) */
.n2e-event-form .n2e-event-gallery-thumb-wrap {
	position: relative;
	width: 40px !important;
	height: 40px !important;
	flex: 0 0 40px !important;
}
.n2e-event-form .n2e-event-gallery-thumb-wrap .n2e-event-gallery-link,
.n2e-event-form .n2e-ug-strip-thumb {
	width: 40px !important;
	height: 40px !important;
	flex: 0 0 40px !important;
}
.n2e-event-form .n2e-event-gallery-thumb {
	width: 100% !important;
	height: 100% !important;
	border: 0 !important;
	background: transparent !important;
}
.n2e-event-form .n2e-ug-strip-empty {
	min-height: 40px;
}
.n2e-event-gallery-clear-btn,
#n2eEventGalleryClear.n2e-event-gallery-clear-btn,
.blbutton.n2e-event-gallery-clear-btn {
	display: none !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: 100%;
	height: auto !important;
	margin: 6px 0 0 auto !important;
	padding: 0 !important;
	font-family: inherit !important;
	font-size: 0.7rem !important;
	font-weight: 500 !important;
	line-height: 1.25 !important;
	letter-spacing: 0 !important;
	color: var(--m02-muted, #9bb0bd) !important;
	text-align: center !important;
	cursor: pointer;
	white-space: nowrap;
}
#n2eEventGalleryClear.n2e-event-gallery-clear-btn.is-shown {
	display: block !important;
}
.n2e-event-form #n2eEventGalleryClear.n2e-event-gallery-clear-btn.is-shown {
	align-self: flex-end;
	width: 88px;
	text-align: center !important;
	margin: 6px 0 0 0 !important;
}
.n2e-event-gallery-clear-btn:hover,
#n2eEventGalleryClear.n2e-event-gallery-clear-btn:hover {
	color: var(--m02-cyan, #7fdce8) !important;
	background: transparent !important;
	border: none !important;
}
.n2e-event-gallery-bar {
	display: flex;
	align-items: baseline;
	justify-content: flex-start;
	gap: 10px;
	margin: 0;
	padding: 0;
	border: none;
	background: transparent;
	cursor: pointer;
	color: inherit;
	font: inherit;
}
.n2e-event-gallery-bar:hover .n2e-event-gallery-attach-label {
	color: var(--m02-cyan);
}
.n2e-event-gallery-attach {
	display: inline-flex;
	align-items: baseline;
	gap: 8px;
	user-select: none;
	padding: 2px 0;
}
.n2e-event-gallery-attach-label,
.n2e-event-gallery-title {
	font-size: 0.78rem;
	font-weight: 500;
	color: var(--m02-cyan);
}
.n2e-event-gallery-hint {
	font-size: 0.66rem;
	color: var(--m02-muted);
	letter-spacing: 0.02em;
	white-space: nowrap;
}
.n2e-event-gallery-label {
	display: none;
}
/* По умолчанию компактно — раскрывается только пока тащат файлы */
.n2e-event-gallery-drop {
	position: relative;
	border: 1px solid transparent;
	padding: 2px 0;
	margin: 0;
	text-align: center;
	cursor: pointer;
	background: transparent;
	min-height: 0;
	box-sizing: border-box;
	transition: min-height 0.18s ease, padding 0.18s ease, border-color 0.15s ease, background 0.15s ease;
}
.n2e-event-gallery-drop.has-thumbs {
	cursor: default;
	text-align: center;
}
.n2e-event-gallery-drop.is-full:not(.is-drag) {
	opacity: 0.9;
}
.n2e-event-gallery-drop.is-drag {
	min-height: 128px;
	padding: 28px 14px 20px;
	border: 1px dashed var(--m02-cyan);
	background: var(--m02-hover);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
}
.n2e-event-gallery-drop-hint,
.n2e-event-gallery-drop-text {
	display: none;
	font-size: 0.84rem;
	font-weight: 500;
	color: var(--m02-cyan);
	letter-spacing: 0.02em;
	pointer-events: none;
}
.n2e-event-gallery-drop.is-drag .n2e-event-gallery-drop-hint,
.n2e-event-gallery-drop.is-drag .n2e-event-gallery-drop-text {
	display: block;
}
.n2e-event-gallery-thumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 0;
	justify-content: center;
}
.n2e-event-gallery-drop .n2e-event-gallery-thumbs {
	margin: 6px 0 0;
}
.n2e-event-gallery-drop.is-drag .n2e-event-gallery-thumbs {
	margin-top: 10px;
}
.n2e-event-gallery-drop .n2e-event-gallery-thumbs:empty {
	display: none;
}
.n2e-event-sheet-gallery.n2e-ug-rail-row {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 8px !important;
	margin: 0 0 14px !important;
	width: 100%;
	box-sizing: border-box;
}
.n2e-event-sheet-gallery .n2e-event-sheet-rail {
	flex: 1 1 0 !important;
	min-width: 0 !important;
	width: 0 !important;
	max-width: 100%;
}
.n2e-event-sheet-gallery .n2e-ug-strip-thumb.n2e-event-gallery-link,
.n2e-event-sheet-gallery .n2e-event-gallery-link {
	width: 40px !important;
	height: 40px !important;
	flex: 0 0 40px !important;
	padding: 0 !important;
	border: 1px solid var(--m02-line, rgba(127, 220, 232, 0.35)) !important;
	background: rgba(0, 0, 0, 0.2) !important;
	overflow: hidden;
	box-sizing: border-box !important;
}
.n2e-event-sheet-gallery .n2e-event-gallery-thumb {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain;
	object-position: center;
	border: 0 !important;
	background: transparent !important;
	display: block;
}
.n2e-event-gallery-thumb-wrap {
	position: relative;
	width: 56px;
	height: 56px;
	flex-shrink: 0;
}
.n2e-event-gallery-link {
	display: block;
	width: 56px;
	height: 56px;
	padding: 0;
	border: none;
	background: transparent;
	cursor: zoom-in;
	flex: 0 0 auto;
	box-sizing: border-box;
}
.n2e-event-gallery-thumb-wrap .n2e-event-gallery-link {
	width: 100%;
	height: 100%;
}
.n2e-event-gallery-thumb {
	width: 56px;
	height: 56px;
	object-fit: contain;
	object-position: center;
	border: 1px solid var(--m02-line);
	border-radius: 2px;
	background: var(--m02-panel);
	box-sizing: border-box;
	display: block;
}
.n2e-event-gallery-rm,
.n2e-group-composer-preview-rm,
.n2e-user-avatar-remove {
	position: absolute;
	top: -5px;
	right: -5px;
	width: 18px;
	height: 18px;
	padding: 0;
	margin: 0;
	border: 1px solid var(--m02-line);
	border-radius: 50%;
	background: var(--m02-panel);
	color: var(--m02-muted);
	font-size: 0;
	line-height: 0;
	cursor: pointer;
	z-index: 2;
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.n2e-event-gallery-rm::before,
.n2e-event-gallery-rm::after,
.n2e-group-composer-preview-rm::before,
.n2e-group-composer-preview-rm::after,
.n2e-user-avatar-remove::before,
.n2e-user-avatar-remove::after {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	width: 9px;
	height: 1.5px;
	background: currentColor;
	border-radius: 1px;
}
.n2e-event-gallery-rm::before,
.n2e-group-composer-preview-rm::before,
.n2e-user-avatar-remove::before {
	transform: translate(-50%, -50%) rotate(45deg);
}
.n2e-event-gallery-rm::after,
.n2e-group-composer-preview-rm::after,
.n2e-user-avatar-remove::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}
.n2e-event-gallery-rm:hover,
.n2e-group-composer-preview-rm:hover,
.n2e-user-avatar-remove:hover {
	color: #e8a0a0;
	border-color: #c45b5b;
	background: rgba(40, 16, 16, 0.95);
}
.n2e-event-gallery-clear {
	display: inline-block;
	margin-top: 8px;
	padding: 0;
	border: none;
	background: transparent;
	color: var(--m02-muted);
	font-size: 0.72rem;
	cursor: pointer;
}
.n2e-event-gallery-clear:hover {
	color: #c45b5b;
}
.n2e-group-event-inner {
	display: flex !important;
	align-items: flex-start !important;
	gap: 10px !important;
}
.n2e-group-event-body {
	flex: 1 1 auto !important;
	min-width: 0 !important;
}

.confidencialEventDiv {
	background: transparent !important;
	border: 1px solid var(--m02-line) !important;
	color: var(--m02-muted) !important;
	box-sizing: border-box;
	text-align: center !important;
	cursor: pointer;
}
.confidencialEventDiv:hover {
	background: var(--m02-cyan-soft) !important;
	color: var(--m02-text) !important;
	border-color: var(--m02-cyan) !important;
}
.confidencialEventDivActive {
	background: transparent !important;
	color: var(--m02-cyan) !important;
	border-color: var(--m02-cyan) !important;
}
.confidencialEventP {
	display: block !important;
	width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	padding: 8px 12px !important;
	color: var(--m02-muted);
	text-align: center !important;
	cursor: pointer;
	font-size: 0.9rem !important;
}
.n2e-event-form #confidencialEvent {
	cursor: default;
	padding-top: 2px !important;
	padding-bottom: 0 !important;
	margin-top: 0 !important;
	min-height: 0 !important;
	height: auto !important;
}
.n2e-event-form #confidencialEvent:not(.is-open) > .confidencialEventDiv {
	display: none !important;
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	overflow: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}
.n2e-event-form #confidencialEvent.is-open > .confidencialEventDiv {
	display: inline-block !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}
.n2e-event-form #confidencialEvent > .confidencialEventP {
	padding: 4px 0 !important;
	margin: 0 !important;
	line-height: 1.3 !important;
}
.n2e-event-form #confidencialEvent:not(.forThemeEventDisabled) .confidencialEventP:hover {
	color: var(--m02-cyan);
}
.n2e-event-form #n2eEventAudience:not(:visible),
.n2e-event-form #n2eEventAudience[style*="display: none"] {
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
}

/* Аудитория друзей: kind = сегментный переключатель; scope = underline-вкладки */
.n2e-event-friends-access {
	margin: 2px 0 10px;
	padding: 2px 2px 0;
	border: none;
	text-align: center;
}
.n2e-event-audience-kind {
	display: inline-flex;
	align-items: stretch;
	justify-content: center;
	margin: 4px auto 10px;
	border: 1px solid var(--m02-line);
	border-radius: 10px;
	overflow: hidden;
	background: transparent;
	max-width: 100%;
}
.n2e-event-audience-kind-btn {
	appearance: none;
	-webkit-appearance: none;
	flex: 1 1 0;
	min-width: 96px;
	margin: 0;
	padding: 7px 16px;
	border: none !important;
	border-right: 1px solid var(--m02-line) !important;
	border-radius: 0;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--m02-muted);
	font-family: var(--m02-font-ui);
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0.03em;
	cursor: pointer;
	line-height: 1.25;
	text-align: center;
}
.n2e-event-audience-kind-btn:last-child {
	border-right: none !important;
}
.n2e-event-audience-kind-btn:hover {
	color: var(--m02-text);
	background: var(--m02-hover, rgba(127, 220, 232, 0.08)) !important;
}
.n2e-event-audience-kind-btn-active,
.n2e-event-audience-kind-btn-active:hover {
	color: var(--m02-cyan) !important;
	background: rgba(127, 220, 232, 0.12) !important;
}
.n2e-event-friends-scope {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: center;
	gap: 4px 18px;
	margin: 0 0 4px;
}
.n2e-friends-scope-btn {
	appearance: none;
	-webkit-appearance: none;
	position: relative;
	display: inline-block;
	width: auto;
	margin: 0;
	padding: 4px 2px 8px;
	border: none !important;
	border-radius: 0;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--m02-muted);
	font-family: var(--m02-font-ui);
	font-size: 0.82rem;
	letter-spacing: 0.02em;
	cursor: pointer;
	line-height: 1.25;
	text-align: center;
}
.n2e-friends-scope-btn::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 2px;
	height: 2px;
	background: transparent;
	pointer-events: none;
}
.n2e-friends-scope-btn:hover {
	color: var(--m02-text);
	background: transparent !important;
}
.n2e-friends-scope-btn-active,
.n2e-friends-scope-btn-active:hover {
	color: var(--m02-cyan) !important;
	background: transparent !important;
}
.n2e-friends-scope-btn-active::after {
	background: var(--m02-cyan);
}
.n2e-event-friends-picker {
	margin-top: 8px;
}
.n2e-event-friends-actions {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 0 8px;
	margin: 2px 0 4px;
	font-size: 0.75rem;
}
.n2e-event-friends-actions-sep {
	color: var(--m02-muted);
	opacity: 0.6;
}
.n2e-event-friends-actions a {
	color: var(--m02-muted);
	text-decoration: none;
	cursor: pointer;
}
.n2e-event-friends-actions a:hover {
	color: var(--m02-cyan);
}
.n2e-event-friends-search,
.n2e-event-friends-picker #n2eEventFriendsSearch {
	display: block;
	box-sizing: border-box;
	width: 100%;
	margin: 2px 0 6px;
	padding: 4px 2px 5px;
	border: none !important;
	border-bottom: 1px solid var(--m02-line) !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	outline: none;
	font-family: var(--m02-font-ui);
	font-size: 0.8rem !important;
	text-align: center !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
	color: var(--m02-text) !important;
	caret-color: var(--m02-cyan);
	-webkit-appearance: none;
	appearance: none;
}
.n2e-event-friends-search::placeholder,
.n2e-event-friends-picker #n2eEventFriendsSearch::placeholder {
	color: var(--m02-muted);
	opacity: 0.85;
}
.n2e-event-friends-search:focus,
.n2e-event-friends-picker #n2eEventFriendsSearch:focus {
	border-bottom-color: var(--m02-cyan) !important;
}
.n2e-event-friends-search::-webkit-search-decoration,
.n2e-event-friends-search::-webkit-search-cancel-button {
	-webkit-appearance: none;
	appearance: none;
}
.n2e-event-friends-list {
	max-height: 160px;
	overflow: auto;
	border: none;
	border-top: 1px solid var(--m02-line);
	padding: 2px 0 0;
	background: transparent;
}
.n2e-event-friend-row {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 5px 4px;
	margin: 0;
	cursor: pointer;
	font-weight: normal;
	color: var(--m02-text);
}
.n2e-event-friend-row:hover {
	background: var(--m02-cyan-soft);
}
.n2e-event-friend-name {
	font-size: 0.85rem;
}
.n2e-event-friends-empty {
	padding: 8px 4px;
	color: var(--m02-muted);
	font-size: 0.82rem;
}

/* Подвал формы: ряд 18+ + подтверждение по центру */
.n2e-event-form-foot {
	clear: both;
	margin-top: 18px;
	text-align: left;
	overflow: visible !important;
	position: relative;
}
.n2e-event-limit18-wrap {
	position: relative;
	display: inline-block;
	max-width: 100%;
	text-align: left;
}
.n2e-event-limit18 {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 8px 0 4px;
	cursor: pointer;
	font-weight: normal;
}
.n2e-event-limit18 .checkboxEvent,
.n2e-event-limit18 #limit18 {
	float: none !important;
	position: static !important;
	margin: 0 !important;
	flex: 0 0 auto;
}
.n2e-event-limit18 .limit18P {
	float: none !important;
	display: inline;
	margin: 0 !important;
	font-size: 0.85rem;
	color: var(--m02-muted) !important;
}
.n2e-event-limit18 .limit18span {
	float: none !important;
	position: static !important;
	top: auto !important;
	margin: 0 !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	border: 1px solid var(--m02-line);
	border-radius: 50%;
	font-size: 0.68rem !important;
	font-weight: 600;
	line-height: 1 !important;
	color: var(--m02-cyan) !important;
	box-sizing: border-box;
	cursor: help;
}
.modalElement .limit18div,
.event-specific .limit18div,
.n2e-event-limit18-wrap .limit18div {
	position: absolute !important;
	left: 0 !important;
	right: auto !important;
	bottom: calc(100% + 8px) !important;
	top: auto !important;
	width: min(300px, 85vw) !important;
	height: auto !important;
	min-height: 0 !important;
	z-index: 80 !important;
	margin: 0 !important;
	padding: 12px 14px !important;
	font-size: 0.8rem !important;
	line-height: 1.45 !important;
	text-align: left !important;
	box-sizing: border-box !important;
	background: var(--m02-panel) !important;
	border: 1px solid var(--m02-line) !important;
	color: var(--m02-text) !important;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4) !important;
	display: none;
}
.n2e-event-form-actions {
	display: flex;
	justify-content: center;
	clear: both;
	margin: 14px 0 6px;
}
.n2e-event-form-actions #eventCreateComplete,
#eventCreateComplete {
	display: block !important;
	float: none !important;
	clear: none !important;
	width: min(270px, 100%) !important;
	margin: 0 !important;
}
.n2e-event-notice-bg.HighLevelBackground,
.HighLevelBackground.n2e-event-notice-bg {
	z-index: 10040 !important;
	position: fixed !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background-color: rgba(0, 0, 0, 0.78) !important;
	background-image: none !important;
}
.HighLevelModal.n2e-event-notice {
	z-index: 10041 !important;
	top: 26% !important;
	left: 50% !important;
	right: auto !important;
	bottom: auto !important;
	transform: translateX(-50%) !important;
	width: 300px !important;
	max-width: calc(100vw - 40px) !important;
	min-width: 0 !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
	border: 1px solid rgba(127, 220, 232, 0.35) !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	background: var(--m02-panel) !important;
	text-align: center !important;
}
.HighLevelModal.n2e-event-notice .n2e-event-notice-inner {
	padding: 20px 22px 18px;
}
.HighLevelModal.n2e-event-notice .n2e-event-notice-title {
	margin: 0 0 10px !important;
	padding: 0 !important;
	font-family: var(--m02-font-ui) !important;
	font-size: 0.92rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.02em !important;
	line-height: 1.3 !important;
	color: var(--m02-text) !important;
}
.HighLevelModal.n2e-event-notice p.n2e-event-notice-text,
.HighLevelModal.n2e-event-notice .n2e-event-notice-text {
	margin: 0 0 16px !important;
	padding: 0 !important;
	font-family: var(--m02-font-ui) !important;
	font-size: 0.8rem !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	color: var(--m02-muted) !important;
	text-align: center !important;
}
.HighLevelModal.n2e-event-notice .n2e-event-notice-btn,
.HighLevelModal.n2e-event-notice .blbutton.n2e-event-notice-btn {
	display: inline-block !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	margin: 0 auto !important;
	color: var(--m02-muted) !important;
	border: 1px solid var(--m02-line) !important;
	background: transparent !important;
	box-shadow: none !important;
}
.HighLevelModal.n2e-event-notice .n2e-event-notice-btn:hover,
.HighLevelModal.n2e-event-notice .blbutton.n2e-event-notice-btn:hover {
	color: var(--m02-cyan) !important;
	border-color: var(--m02-cyan) !important;
	background: var(--m02-hover) !important;
}
input[type="checkbox"],
.checkboxEvent {
	accent-color: var(--m02-cyan);
	width: 16px;
	height: 16px;
	filter: none;
}
.limit18P,
.limit18span {
	color: var(--m02-muted) !important;
}
.n2e-event-limit18 .limit18span {
	color: var(--m02-cyan) !important;
}
.limit18div {
	background: var(--m02-panel) !important;
	border-color: var(--m02-line) !important;
	color: var(--m02-text) !important;
}
#h4ModalDate,
.modalElement h4 {
	color: var(--m02-text);
	letter-spacing: 0.04em;
}
.modalElement .n2e-event-form-title,
.event-specific .n2e-event-form-title {
	letter-spacing: normal;
}

/* —— Строки профиля —— */
.redirectUser .show-hide-additional_info,
.redirectUser .show-hide-additional_infoDisabled {
	padding: 22px 12px 16px !important;
	margin-bottom: 6px;
}
.redirectUser .div_additional,
.div_additional {
	display: grid;
	grid-template-columns: minmax(150px, 36%) 1fr;
	gap: 8px 18px;
	align-items: start;
	margin: 0 !important;
	padding: 10px 6px 11px;
	border-bottom: 1px solid var(--m02-line);
	text-align: left;
}
.n2e-profile-k,
.n2e-field-label {
	font-family: var(--m02-font-ui);
	font-size: var(--n2e-label-size);
	font-weight: var(--n2e-label-weight);
	letter-spacing: var(--n2e-label-tracking);
	text-transform: uppercase;
	color: var(--n2e-label-color);
	line-height: 1.3;
	padding-top: 1px;
}
.n2e-empty-state {
	display: block;
	margin: 18px auto;
	padding: 8px 12px;
	max-width: 560px;
	text-align: center;
	font-family: var(--m02-font-ui);
	font-size: var(--n2e-empty-size);
	font-weight: 400;
	line-height: 1.45;
	letter-spacing: 0.01em;
	color: var(--n2e-empty-color);
}
.n2e-profile-v {
	font-size: 0.84rem;
	font-weight: 400;
	color: var(--m02-text);
	word-break: break-word;
	line-height: 1.4;
	opacity: 0.92;
}
.show-hide-additional_info,
.showHideAddInfo,
.show-hide-additional_infoDisabled {
	background: transparent !important;
	color: var(--m02-cyan) !important;
	border: none !important;
	box-shadow: none !important;
}
.arrow_bottom_additional,
.arrow_bottom {
	border-top-color: var(--m02-cyan) !important;
	border-right-color: var(--m02-cyan) !important;
}
.additional_info_div,
.updateAddInfo {
	max-width: 560px;
	margin-left: auto;
	margin-right: auto;
}

/* —— Карточки списков (друзья / люди / подписчики / подписки / приглашения / админ) —— */
.friendsElement,
.usersInfoElement,
.moreFriendElement,
.moreUsersElement,
.n2e-group-card,
.friendsElement.n2e-list-card {
	height: auto !important;
	min-height: 0 !important;
	width: 100% !important;
	max-width: 560px !important;
	display: block !important;
	box-sizing: border-box !important;
	margin: 0 auto 10px !important;
	padding: 12px 16px !important;
	border: 1px solid var(--m02-line) !important;
	border-radius: 10px !important;
	box-shadow: none !important;
	background: var(--m02-panel) !important;
	opacity: 1 !important;
	text-align: left !important;
	font-family: var(--m02-font-ui) !important;
}
/* Карточки пользователей: аватар + тело (имя слева / действия справа) */
.friendsElement.n2e-list-card.n2e-user-card,
.usersInfoElement.n2e-list-card.n2e-user-card {
	display: flex !important;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 14px;
	max-width: 560px !important;
	padding: 12px 16px !important;
	overflow: hidden;
}
.n2e-list-body {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	width: auto;
	max-width: 100%;
}
.n2e-list-body > .friendsHref,
.n2e-list-body > .usersInfoHref,
.n2e-list-body > .n2e-invite-main,
.n2e-list-body > .n2e-list-main {
	width: 100%;
	min-width: 0;
}
.n2e-list-body > .n2e-list-actions {
	flex: 0 0 auto;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 8px;
	margin-top: 2px;
	max-width: 100%;
}
.friends .friendsListHeader,
.friends .searchFriendsDiv,
.friends .FriendsListDiv,
.people .friendsListHeader,
.people .searchFriendsDiv,
.people .FriendsListDiv,
.subscribersView .friendsListHeader,
.subscribersView .searchFriendsDiv,
.subscribersView .FriendsListDiv,
.subscriptionsView .friendsListHeader,
.subscriptionsView .searchFriendsDiv,
.subscriptionsView .FriendsListDiv,
.blacklistView .friendsListHeader,
.blacklistView .searchFriendsDiv,
.blacklistView .FriendsListDiv,
.invitationsView .friendsListHeader,
.invitationsView .searchFriendsDiv,
.invitationsView .FriendsListDiv,
.admin_panel .searchUsersDiv,
.admin_panel .UsersListDiv,
.admin_panel #AdminChangeUser {
	max-width: 560px;
	margin-left: auto;
	margin-right: auto;
}
.admin_panel .n2e-admin-user-search-toggle {
	color: var(--m02-muted) !important;
}
.admin_panel .n2e-admin-user-search-toggle:hover,
.admin_panel .n2e-admin-user-search-toggle.is-active {
	color: var(--m02-cyan) !important;
}
.n2e-list-search-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	margin: 0;
	padding: 0;
	border: none;
	background: transparent;
	appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
	box-sizing: border-box;
	color: var(--m02-muted) !important;
	z-index: 1;
}
.n2e-list-search-toggle svg {
	display: block;
}
.n2e-list-search-toggle:hover,
.n2e-list-search-toggle.is-active {
	color: var(--m02-cyan) !important;
}
.n2e-list-search-wrap .friendSearch {
	display: block;
	width: 100%;
	box-sizing: border-box;
	border: none !important;
	border-bottom: 1px solid var(--m02-cyan) !important;
	background: transparent !important;
	box-shadow: none !important;
	padding: 0.35em 0.2em !important;
	font: inherit;
	font-size: 0.88em !important;
	text-align: left;
	color: var(--m02-text);
	outline: none;
	min-height: 0;
}
.n2e-list-search-wrap .friendSearch::placeholder {
	color: var(--m02-muted);
}
.n2e-list-search-wrap .friendSearch:focus {
	border-bottom-color: var(--m02-cyan) !important;
}
.n2e-events-shell .friendsListHeader,
.n2e-events-shell .searchFriendsDiv {
	max-width: 100%;
	width: 100%;
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
}
.n2e-events-sort-row {
	border-top-color: var(--m02-line) !important;
}
.n2e-events-sort-tab {
	color: var(--m02-muted) !important;
}
.n2e-events-sort-tab:hover {
	color: var(--m02-text) !important;
}
.n2e-events-sort-tab-active,
.n2e-events-sort-tab-active:hover {
	color: var(--m02-cyan) !important;
	border-bottom-color: var(--m02-cyan) !important;
}
.n2e-events-sort-sep {
	background: var(--m02-line) !important;
}
.n2e-events-card-mine {
	color: var(--m02-cyan) !important;
}
.n2e-user-avatar,
.n2e-user-avatar-lg {
	width: 52px !important;
	height: 52px !important;
	flex-shrink: 0;
	object-fit: contain;
	object-position: center;
	border-radius: 4px;
	border: 1px solid var(--m02-line);
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	vertical-align: top;
	background: var(--m02-panel);
}
@media (max-width: 560px) {
	.friendsElement.n2e-list-card.n2e-user-card,
	.usersInfoElement.n2e-list-card.n2e-user-card {
		padding: 10px 12px !important;
	}
}
img.n2e-user-avatar,
img.n2e-user-avatar-lg,
img.n2e-group-avatar,
img.n2e-group-avatar-lg {
	cursor: zoom-in;
}
.n2e-avatar-lightbox {
	position: fixed;
	inset: 0;
	/* Над листами дня/события (~10040) и группы/создания (~12050); ниже confirm (~13060) */
	z-index: 12200;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	box-sizing: border-box;
	isolation: isolate;
}
.n2e-avatar-lightbox-bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	background: rgba(0, 0, 0, 0.72);
	cursor: pointer;
}
.n2e-avatar-lightbox-stage {
	position: relative;
	z-index: 1;
	display: inline-block;
	max-width: min(86vw, 1200px);
	max-height: 88vh;
	line-height: 0;
}
.n2e-avatar-lightbox:not(.n2e-avatar-lightbox--multi) .n2e-avatar-lightbox-stage {
	max-width: min(96vw, 1600px);
	max-height: 94vh;
}
.n2e-avatar-lightbox-img {
	position: relative;
	z-index: 1;
	display: block;
	max-width: min(86vw, 1200px);
	max-height: 88vh;
	width: auto;
	height: auto;
	object-fit: contain;
	border: 1px solid var(--m02-line);
	background: var(--m02-panel);
	box-shadow: none;
	cursor: zoom-in;
}
.n2e-avatar-lightbox--multi .n2e-avatar-lightbox-img {
	max-width: 100%;
	max-height: 100%;
}
.n2e-avatar-lightbox:not(.n2e-avatar-lightbox--multi) .n2e-avatar-lightbox-img {
	max-width: min(96vw, 1600px);
	max-height: 94vh;
}
/* Центрирование развёрнутого — после базовых правил, чтобы ничего не перебило */
.n2e-avatar-lightbox--expanded .n2e-avatar-lightbox-rail,
.n2e-avatar-lightbox--expanded.n2e-avatar-lightbox--multi .n2e-avatar-lightbox-rail {
	position: absolute;
	inset: 0;
	display: flex !important;
	align-items: center;
	justify-content: center;
	grid-template-columns: none !important;
}
.n2e-avatar-lightbox--expanded .n2e-avatar-lightbox-stage,
.n2e-avatar-lightbox--expanded.n2e-avatar-lightbox--multi .n2e-avatar-lightbox-stage {
	width: auto !important;
	max-width: 98vw !important;
	height: auto !important;
	max-height: 96vh !important;
	display: flex !important;
	margin: 0 auto !important;
}
.n2e-avatar-lightbox--expanded:not(.n2e-avatar-lightbox--zoomed) .n2e-avatar-lightbox-img {
	max-width: 98vw !important;
	max-height: 96vh !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	margin: 0 auto !important;
}
.n2e-avatar-lightbox--zoomed .n2e-avatar-lightbox-stage,
.n2e-avatar-lightbox--expanded.n2e-avatar-lightbox--zoomed .n2e-avatar-lightbox-stage {
	position: absolute !important;
	inset: 0 !important;
	width: auto !important;
	height: auto !important;
	max-width: none !important;
	max-height: none !important;
	overflow: hidden !important;
	margin: 0 !important;
}
.n2e-avatar-lightbox--zoomed .n2e-avatar-lightbox-img,
.n2e-avatar-lightbox--expanded.n2e-avatar-lightbox--zoomed .n2e-avatar-lightbox-img {
	max-width: none !important;
	max-height: none !important;
	object-fit: fill;
	margin: 0 !important;
}

/* Обрезка аватара — выше модалок создания группы / confirm (12040–12050) */
.n2e-avatar-crop-bg {
	position: fixed;
	inset: 0;
	z-index: 12140 !important;
	background: rgba(0, 0, 0, 0.78);
}
.n2e-avatar-crop {
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 12150 !important;
	width: auto;
	max-width: 96vw;
	padding: 0;
	margin: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
	box-sizing: border-box;
	color: var(--m02-text, #d7e6ee);
}
.n2e-avatar-crop-stage {
	position: relative;
	margin: 0 auto 12px;
	overflow: hidden;
	border: 0;
	background: transparent;
	cursor: grab;
	touch-action: none;
	user-select: none;
}
.n2e-avatar-crop-stage.is-dragging {
	cursor: grabbing;
}
.n2e-avatar-crop-img {
	position: absolute;
	left: 0;
	top: 0;
	max-width: none;
	display: block;
	pointer-events: none;
	transform-origin: 0 0;
	z-index: 1;
}
.n2e-avatar-crop-veil {
	position: absolute;
	left: 0;
	top: 0;
	box-sizing: border-box;
	border: 1px solid rgba(127, 220, 232, 0.9);
	box-shadow: 0 0 0 9999px rgba(0, 0, 0, 0.58);
	pointer-events: auto;
	cursor: move;
	z-index: 2;
}
.n2e-avatar-crop-stage.is-resizing {
	cursor: grabbing;
}
.n2e-avatar-crop-actions {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px 10px;
	max-width: 100%;
	padding: 0;
	margin: 0;
	background: transparent;
	border: 0;
}
.n2e-avatar-crop-actions .blbutton {
	flex: 0 0 auto;
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	margin-top: 0 !important;
	color: var(--m02-muted) !important;
	border: 1px solid var(--m02-line) !important;
	background: transparent !important;
	box-shadow: none !important;
}
.n2e-avatar-crop-actions .blbutton:hover {
	color: var(--m02-cyan) !important;
	border-color: var(--m02-cyan) !important;
	background: var(--m02-hover) !important;
}

.n2e-group-composer-media {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	gap: 8px !important;
	margin: 8px 0 10px;
	width: 100%;
	box-sizing: border-box;
	transition: min-height 0.18s ease;
}
.n2e-group-composer-media.is-drag {
	min-height: 110px;
}
.n2e-group-composer-rail {
	flex: 1 1 0 !important;
	min-width: 0 !important;
	width: 0 !important;
	padding: 4px 3px !important;
	border-color: rgba(127, 220, 232, 0.28) !important;
	background: rgba(0, 0, 0, 0.18) !important;
}
.n2e-group-composer-media .n2e-ug-rail-btn {
	height: 40px !important;
}
.n2e-group-composer-side.n2e-ug-side-drop {
	flex: 0 0 auto !important;
	align-self: stretch !important;
	width: 88px !important;
	min-width: 88px;
	min-height: 48px !important;
	max-height: none !important;
	height: auto !important;
	padding: 6px 8px !important;
	box-sizing: border-box;
	border: 1px dashed var(--m02-line, rgba(127, 220, 232, 0.4)) !important;
	background: transparent !important;
}
.n2e-group-composer-side.n2e-ug-side-drop:hover {
	border-color: var(--m02-cyan, #7fdce8) !important;
}
.n2e-group-composer-side .n2e-ug-side-drop-label.n2e-ug-side-drop-cam {
	color: var(--m02-cyan, #7fdce8) !important;
	line-height: 0 !important;
}
.n2e-group-composer-side .n2e-ug-side-drop-hint {
	display: block !important;
	margin-top: 4px;
	font-size: 0.68rem !important;
	color: var(--m02-muted, #7a93a3) !important;
}
.n2e-group-composer-side.is-full {
	opacity: 0.45;
	pointer-events: none;
}
.n2e-group-composer-media.is-drag .n2e-group-composer-side {
	min-height: 100px !important;
}
.n2e-group-composer-bar {
	display: flex !important;
	justify-content: flex-end !important;
	margin-top: 0 !important;
}

.n2e-user-avatar-lg {
	width: 88px !important;
	height: 88px !important;
	border-radius: 6px;
}
.n2e-user-avatar-empty {
	background: var(--m02-cyan-soft);
	color: var(--m02-cyan);
	border-style: dashed !important;
}
.n2e-user-avatar-initials {
	font-family: var(--m02-font-ui);
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	line-height: 1;
	user-select: none;
}
.n2e-user-avatar-lg .n2e-user-avatar-initials {
	font-size: 1.15rem;
}
.n2e-user-avatar-caption {
	font-family: var(--m02-font-ui);
	font-size: 0.68rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	line-height: 1.2;
	text-align: center;
	user-select: none;
	pointer-events: none;
}
.n2e-settings-identity {
	display: flex;
	align-items: center;
	gap: 16px 18px;
	margin: 0 0 4px;
	padding: 8px 4px 12px;
	border-bottom: 1px solid var(--m02-line);
	box-sizing: border-box;
}
.n2e-settings-identity-avatar {
	flex: 0 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35em;
	padding-top: 0;
}
.n2e-settings-identity-avatar .n2e-user-avatar-drop {
	position: relative;
	border: none !important;
	box-shadow: none !important;
	border-radius: 4px;
	overflow: visible;
}
.n2e-settings-identity-avatar .n2e-user-avatar-lg,
.n2e-settings-identity-avatar .n2e-user-avatar {
	width: 120px !important;
	height: 120px !important;
	border-radius: 4px !important;
	border-color: var(--m02-line) !important;
	box-shadow: none !important;
	overflow: hidden;
	object-fit: cover !important;
	object-position: center !important;
}
.n2e-settings-identity-avatar .n2e-user-avatar-caption {
	font-size: 0.78rem;
}
.n2e-settings-identity-avatar .n2e-user-avatar-drop:hover .n2e-user-avatar,
.n2e-settings-identity-avatar .n2e-user-avatar-drop:focus .n2e-user-avatar {
	border-color: var(--m02-muted) !important;
}
.n2e-settings-identity-avatar .n2e-user-avatar-drop.has-file::after {
	display: none !important;
	content: none !important;
}
.n2e-user-avatar-change {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	margin: 0;
	padding: 4px 0;
	border: 0;
	border-radius: 0 0 4px 4px;
	background: rgba(0, 0, 0, 0.55);
	color: #fff;
	font-family: inherit;
	font-size: 0.58rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	cursor: pointer;
	opacity: 0;
	transition: opacity 0.15s ease;
}
.n2e-user-avatar-drop.has-file:hover .n2e-user-avatar-change,
.n2e-user-avatar-drop.has-file:focus-within .n2e-user-avatar-change,
.n2e-user-avatar-change:focus {
	opacity: 1;
}
.n2e-user-avatar-change[hidden] {
	display: none !important;
}
.n2e-settings-identity-avatar .n2e-user-avatar-remove-text {
	display: inline !important;
	position: static !important;
	width: auto !important;
	min-width: 0 !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--m02-muted) !important;
	font-size: 0.72rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.02em !important;
	line-height: 1.2 !important;
	cursor: pointer;
}
.n2e-settings-identity-avatar .n2e-user-avatar-remove-text:hover {
	color: #c45c5c !important;
}
.n2e-settings-identity-avatar .n2e-user-avatar-remove-text[hidden] {
	display: none !important;
}
.n2e-settings-identity-avatar .n2e-user-avatar-remove-text::before,
.n2e-settings-identity-avatar .n2e-user-avatar-remove-text::after {
	content: none !important;
	display: none !important;
}
.n2e-settings-identity-fio {
	flex: 1 1 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
}
.n2e-settings-fio-row {
	display: grid;
	grid-template-columns: minmax(100px, 30%) 1fr;
	gap: 6px 12px;
	align-items: center;
	padding: 6px 4px 8px;
	border-bottom: 1px solid var(--m02-line);
	box-sizing: border-box;
	margin: 0;
}
.n2e-settings-fio-row:last-child {
	border-bottom: none;
	padding-bottom: 6px;
}
.n2e-settings-fio-row .n2e-profile-k {
	font-size: var(--n2e-label-size);
}
.n2e-settings-fio-row .n2e-settings-v {
	min-width: 0;
	width: 100%;
}
#profile .n2e-settings-identity-fio input.form-control,
#profile .n2e-settings-identity-fio input.form-control-user-profile,
#profile .n2e-settings-row .n2e-settings-v input.form-control,
#profile .n2e-settings-row .n2e-settings-v input.form-control-user-profile,
#profile .n2e-settings-row .n2e-settings-v input[type="tel"],
#profile .n2e-settings-row .n2e-settings-v input[type="email"],
#profile .n2e-settings-row .n2e-settings-v input[type="date"] {
	font-family: var(--m02-font-input) !important;
	font-size: 0.91rem !important;
	font-weight: 400 !important;
	letter-spacing: normal !important;
	line-height: 1.4 !important;
	color: var(--m02-text) !important;
	opacity: 1 !important;
	-webkit-text-fill-color: var(--m02-text) !important;
}
.n2e-text-action,
.n2e-user-avatar-remove.n2e-text-action {
	display: inline !important;
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--m02-muted) !important;
	font-size: 0.72rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.02em !important;
	cursor: pointer;
	position: static !important;
	left: auto !important;
}
.n2e-text-action:hover,
.n2e-user-avatar-remove.n2e-text-action:hover {
	color: var(--m02-cyan) !important;
	background: transparent !important;
	border: none !important;
}
@media (max-width: 560px) {
	.n2e-settings-identity {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}
	.n2e-settings-identity-fio {
		width: 100%;
	}
	.n2e-settings-fio-row {
		grid-template-columns: minmax(120px, 34%) 1fr;
		text-align: left;
	}
}
.n2e-user-avatar-drop {
	position: relative;
	display: inline-flex;
	padding: 0;
	margin: 0;
	border: none;
	background: transparent;
	cursor: pointer;
	outline: none;
	box-sizing: border-box;
}
.n2e-user-avatar-drop:hover .n2e-user-avatar,
.n2e-user-avatar-drop:focus .n2e-user-avatar {
	border-color: var(--m02-cyan);
}
.n2e-user-avatar-drop:hover .n2e-user-avatar-empty,
.n2e-user-avatar-drop:focus .n2e-user-avatar-empty,
.n2e-user-avatar-drop.is-dragover .n2e-user-avatar-empty {
	background: var(--m02-hover);
	color: var(--m02-text);
}
.n2e-user-avatar-drop.has-file {
	overflow: hidden;
	border-radius: 6px;
}
.n2e-user-avatar-drop.has-file .n2e-user-avatar {
	display: block;
	border-radius: 6px;
}
.n2e-user-avatar-drop.has-file::after {
	display: none !important;
	content: none !important;
}
.n2e-user-avatar-file {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}
.n2e-profile-head {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 12px;
	max-width: 640px;
	margin: 0 auto 20px;
	padding: 8px 0 12px;
	text-align: left;
	box-sizing: border-box;
	border: none;
	background: transparent;
	box-shadow: none;
}
.n2e-profile-top {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 14px;
	min-width: 0;
}
.n2e-profile-avatar-wrap {
	flex-shrink: 0;
}
.n2e-profile-avatar-wrap .n2e-user-avatar {
	width: 72px !important;
	height: 72px !important;
}
.n2e-profile-avatar-wrap .n2e-user-avatar-initials {
	font-size: 1rem;
}
.n2e-profile-head-text {
	flex: 1 1 auto;
	min-width: 0;
}
/* Галерея под блоком аватар+имя — рамка секции, на всю ширину карточки */
.n2e-profile-head > .n2e-profile-gallery {
	width: 100%;
	max-width: none;
	margin: 28px 0 0;
}
.n2e-profile-head > #friendActions {
	width: 100%;
	flex: none;
}
.n2e-profile-display-name {
	margin: 0 0 6px !important;
	font-size: 1.05rem;
	font-weight: 600;
	color: var(--m02-text);
}
.n2e-profile-head-text .lastSeen,
.n2e-profile-head-text .birthday,
.n2e-profile-head-text .n2e-profile-name-note {
	margin: 0 0 4px !important;
	font-size: 0.91rem !important;
	line-height: 1.4 !important;
	color: var(--m02-muted) !important;
}
#friendActions {
	display: flex;
	flex-flow: row wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	flex: 1 1 100%;
	width: 100%;
	max-width: none;
	margin: 2px 0 0 !important;
	padding: 0;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	box-sizing: border-box;
}
.n2e-profile-head > #friendActions {
	flex: none;
	width: auto;
	max-width: 100%;
}
/* Одна кнопка — компактно справа от имени */
#friendActions:not(:has(button:nth-of-type(2))) {
	flex: 0 0 auto;
	width: auto;
	max-width: 200px;
	margin: 0 !important;
	align-self: flex-start;
}
#friendActions .blbutton {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 auto !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	height: var(--n2e-btn-height) !important;
	max-height: var(--n2e-btn-height) !important;
	margin: 0 !important;
	padding: 0 var(--n2e-btn-pad-x) 1px !important;
	position: static !important;
	left: auto !important;
	line-height: 1 !important;
	white-space: nowrap;
	box-sizing: border-box !important;
}
#friendActions:not(:has(button:nth-of-type(2))) .blbutton {
	flex: 0 0 auto !important;
}
#friendActions br {
	display: none;
}
#friendActions .n2e-profile-invite-note {
	flex: 1 0 100%;
	font-size: 0.72rem;
	color: var(--m02-muted);
	margin: 0;
	text-align: left;
}
#friendActions .n2e-profile-block-note {
	flex: 1 0 100%;
	font-size: 0.72rem;
	line-height: 1.35;
	color: var(--m02-muted);
	margin: 0 0 2px;
	text-align: left;
}
#friendActions.is-blocked-state {
	flex-direction: column;
	align-items: stretch;
	flex: 1 1 100%;
	width: 100%;
	max-width: none;
}
.redirectUser .additional_information_user {
	width: min(720px, 100%) !important;
	max-width: 720px;
	left: auto !important;
	margin: 8px auto 12px !important;
	padding: 0 14px;
	text-align: center;
	box-sizing: border-box;
	flex-grow: 0 !important;
	flex-basis: auto !important;
}
.redirectUser .show-hide-additional_info,
.redirectUser .show-hide-additional_infoDisabled {
	display: block;
	width: auto !important;
	max-width: 100%;
	margin: 8px auto 0 !important;
	padding: 8px 0 !important;
	text-align: center !important;
	font-size: 0.91rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.02em !important;
	color: var(--m02-muted) !important;
}
.redirectUser .additional_info_div {
	text-align: left;
	max-width: 100%;
}
.redirectUser .div_additional .n2e-profile-k {
	font-size: 0.91rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.04em !important;
	line-height: 1.4 !important;
}
.redirectUser .div_additional .n2e-profile-v {
	font-size: 0.91rem !important;
	line-height: 1.45 !important;
	opacity: 1;
}
.redirectUser .n2e-profile-head {
	width: max-content;
	max-width: min(720px, 100%);
	margin: 0 auto 12px;
	box-sizing: border-box;
}
.redirectUser .n2e-profile-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 168px;
	grid-template-rows: auto auto auto;
	align-items: start;
	column-gap: 16px;
	row-gap: 12px;
	width: min(720px, 100%);
	max-width: 100%;
	margin: 0 auto 8px;
	box-sizing: border-box;
}
.redirectUser .n2e-profile-layout > .n2e-profile-head {
	grid-column: 1;
	grid-row: 1;
	width: auto;
	max-width: none;
	margin: 0 !important;
	box-sizing: border-box;
}
/* Ширина списка = колонка шапки + табличка; сам список в расчёт ширины не входит */
.redirectUser .n2e-profile-layout > .n2e-profile-social-stage {
	grid-column: 1 / -1;
	grid-row: 3;
	flex: none;
	width: 0;
	min-width: 100%;
	max-width: 100%;
	justify-self: stretch;
	overflow: hidden;
	box-sizing: border-box;
}
.redirectUser .n2e-profile-layout > .n2e-profile-social {
	grid-column: 2;
	grid-row: 1;
	align-self: start;
	justify-self: start;
}
.redirectUser .n2e-profile-layout > .n2e-profile-gallery {
	grid-column: 1 / -1;
	grid-row: 2;
	width: 0;
	min-width: 100%;
	max-width: 100%;
	margin: 28px 0 0;
	justify-self: stretch;
	box-sizing: border-box;
}
.redirectUser.n2e-profile-social-open .additional_information_user,
.redirectUser .n2e-profile-layout.is-open .n2e-profile-gallery {
	display: none !important;
}
.redirectUser .n2e-profile-social[hidden],
.redirectUser .n2e-profile-social-stage[hidden] {
	display: none !important;
}
.redirectUser .n2e-profile-social {
	flex: 0 0 168px;
	width: 168px;
	max-width: 168px;
	margin: 0;
	padding: 6px 8px;
	box-sizing: border-box;
	border: 1px solid var(--m02-line);
	border-radius: 10px;
	background: var(--m02-panel);
}
.redirectUser .n2e-profile-social-nav {
	display: flex;
	flex-direction: column;
	gap: 1px;
	min-width: 0;
}
.redirectUser .n2e-profile-social-tab {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	width: 100%;
	margin: 0;
	padding: 6px 8px;
	border: none;
	border-left: 2px solid transparent;
	background: transparent;
	color: var(--m02-muted);
	font-size: 0.8rem;
	line-height: 1.3;
	text-align: left;
	cursor: pointer;
	box-sizing: border-box;
}
.redirectUser .n2e-profile-social-tab:hover {
	color: var(--m02-cyan);
}
.redirectUser .n2e-profile-social-tab.is-active {
	color: var(--m02-cyan);
	border-left-color: var(--m02-cyan);
	background: var(--m02-hover);
}
.redirectUser .n2e-profile-social-tab.is-closed {
	opacity: 0.55;
	cursor: default;
}
.redirectUser .n2e-profile-social-tab.is-closed:hover {
	color: var(--m02-muted);
}
.redirectUser .n2e-profile-social-tab-l {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.redirectUser .n2e-profile-social-tab-n {
	flex-shrink: 0;
	font-variant-numeric: tabular-nums;
	color: inherit;
	opacity: 0.85;
}
.redirectUser .n2e-profile-social-stage {
	width: auto;
	min-width: 0;
	max-width: 100%;
	margin: 0;
	padding: 8px 10px;
	box-sizing: border-box;
	border: 1px solid var(--m02-line);
	border-radius: 10px;
	background: var(--m02-panel);
}
.redirectUser .n2e-profile-social-stage .friendsListHeader {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 6px;
	position: relative;
	width: 100%;
	max-width: none;
	margin: 0 0 6px;
	padding: 0 0 6px;
	text-align: center;
}
.redirectUser .n2e-profile-social-stage .friendsListCount {
	margin: 0;
	padding: 0;
	min-height: 0;
	font-size: 0.91rem;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.3;
	color: var(--m02-text);
}
.redirectUser .n2e-profile-social-stage .n2e-list-search-toggle {
	position: static;
	top: auto;
	right: auto;
	transform: none;
	flex-shrink: 0;
}
.redirectUser .n2e-profile-social-stage .n2e-list-search-wrap {
	margin: 0 0 8px;
	width: 100%;
	max-width: none;
}
.redirectUser .n2e-profile-social-stage .n2e-empty-state {
	padding: 12px 4px;
	text-align: left;
}
.redirectUser .n2e-profile-social-stage .searchFriendsDiv br,
.redirectUser .n2e-profile-social-stage .loadSearchFriend {
	display: none;
}
.redirectUser .n2e-profile-social-list {
	display: flex;
	flex-direction: column;
	gap: 2px;
	max-height: 360px;
	min-width: 0;
	overflow: auto;
}
.redirectUser .n2e-profile-social-stage.is-wait > .friendsListHeader,
.redirectUser .n2e-profile-social-stage.is-wait > .n2e-list-search-wrap,
.redirectUser .n2e-profile-social-stage.is-wait > .searchFriendsDiv {
	display: none;
}
.redirectUser .n2e-profile-social-list.is-wait {
	min-height: 48px;
	justify-content: center;
}
.redirectUser .n2e-profile-social-stage .n2e-profile-social-progress {
	max-width: none;
	margin: 16px 0 12px;
}
.redirectUser .n2e-profile-social-row {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-width: 0;
	padding: 6px 4px;
	margin: 0;
	font: inherit;
	text-align: left;
	text-decoration: none;
	color: inherit;
	background: transparent;
	border: none;
	border-radius: 8px;
	box-sizing: border-box;
	cursor: pointer;
}
.redirectUser .n2e-profile-social-row:hover {
	background: var(--m02-hover);
}
.redirectUser .n2e-profile-social-row:hover .n2e-profile-social-row-title {
	color: var(--m02-cyan);
}
.redirectUser .n2e-profile-social-row .n2e-user-avatar,
.redirectUser .n2e-profile-social-row .n2e-group-avatar {
	width: 40px !important;
	height: 40px !important;
	flex-shrink: 0;
	margin: 0 !important;
}
.redirectUser .n2e-profile-social-row .n2e-user-avatar-initials,
.redirectUser .n2e-profile-social-row .n2e-group-avatar-initials {
	font-size: 0.75rem;
}
.redirectUser .n2e-profile-social-row-text {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 1px;
	text-align: left;
}
.redirectUser .n2e-profile-social-row-title {
	font-size: 0.91rem;
	line-height: 1.35;
	font-weight: 500;
	color: var(--m02-text);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.redirectUser .n2e-profile-social-row-meta {
	font-size: 0.8rem;
	line-height: 1.3;
	color: var(--m02-muted);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
@media (max-width: 720px), (max-device-width: 720px) {
	.redirectUser .n2e-profile-layout {
		grid-template-columns: minmax(0, 1fr);
		width: 100%;
	}
	.redirectUser .n2e-profile-layout > .n2e-profile-head {
		grid-column: 1;
		grid-row: 1;
		width: auto;
		max-width: none;
		justify-self: center;
	}
	.redirectUser .n2e-profile-layout > .n2e-profile-social {
		grid-column: 1;
		grid-row: 2;
		width: 100%;
		max-width: none;
		justify-self: stretch;
	}
	.redirectUser .n2e-profile-layout > .n2e-profile-gallery {
		grid-column: 1;
		grid-row: 3;
		width: auto;
		min-width: 0;
		max-width: 100%;
		margin-top: 24px;
	}
	.redirectUser .n2e-profile-layout > .n2e-profile-social-stage {
		grid-column: 1;
		grid-row: 4;
		width: auto;
		min-width: 0;
		max-width: 100%;
	}
}
/* Админ / карточки без кнопок: подсказки столбиком под именем */
.usersInfoElement.n2e-list-card:not(:has(.n2e-list-actions)) .usersInfoHref {
	flex: none;
	width: 100%;
	margin-bottom: 2px;
}
.usersInfoElement.n2e-list-card:not(:has(.n2e-list-actions)) .n2e-list-hint {
	width: 100%;
}
/* Админ: логин / e-mail крупнее, меньше воздуха между строками */
.admin_panel .UsersListDiv .n2e-list-body {
	gap: 2px;
}
.admin_panel .UsersListDiv .usersInfoHref {
	margin-bottom: 0 !important;
}
.admin_panel .UsersListDiv .n2e-list-name {
	line-height: 1.3;
}
.admin_panel .UsersListDiv .n2e-list-hint {
	margin-top: 0;
	font-size: 0.86rem;
	line-height: 1.35;
	color: var(--m02-muted);
}
.n2e-group-card {
	display: flex !important;
	flex-direction: row !important;
	align-items: flex-start !important;
	gap: 14px !important;
	max-width: 660px !important;
	width: 100% !important;
	padding: 12px 16px !important;
	margin: 0 auto 8px !important;
}
/* выше специфичности базовых user-card (560px) */
.friendsElement.n2e-list-card.n2e-group-card,
.friendsElement.n2e-list-card.n2e-user-card.n2e-group-card {
	max-width: 660px !important;
	padding: 12px 16px !important;
	gap: 14px !important;
	align-items: flex-start !important;
}
.n2e-group-card > .n2e-group-avatar,
.n2e-group-card > .n2e-group-avatar-empty {
	width: 52px !important;
	height: 52px !important;
	margin: 0 !important;
	padding: 0 !important;
	flex-shrink: 0;
	object-fit: contain !important;
	object-position: center !important;
	border-color: var(--m02-line) !important;
	background: var(--m02-panel) !important;
	box-shadow: none !important;
	border-radius: 4px !important;
}
.n2e-group-card .n2e-list-body,
.n2e-group-card .n2e-group-body {
	flex: 1;
	min-width: 0;
	gap: 3px !important;
}
.n2e-group-card .n2e-list-name,
.n2e-group-card .friendsHref {
	font-size: 0.92rem !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
}
.n2e-group-card .n2e-list-name {
	white-space: normal !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	word-break: break-word;
}
.n2e-group-card .n2e-group-meta,
.n2e-group-card .n2e-group-desc {
	font-size: 0.74rem !important;
}
.n2e-group-card .n2e-group-meta {
	font-size: 0.84rem !important;
}
.n2e-group-card .n2e-group-desc {
	font-size: 0.84rem !important;
	-webkit-line-clamp: 2;
}
.n2e-group-card-side {
	display: flex !important;
	flex-direction: row;
	align-items: flex-start;
	justify-content: flex-end;
	flex-shrink: 0;
	margin-left: 4px;
	gap: 5px;
	padding-top: 2px;
}
.n2e-group-card-side .n2e-group-actions {
	display: flex !important;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 5px !important;
	margin: 0 !important;
}
/* «Открыть» всегда у правого края — не прыгает из‑за «Отписаться» / «Владелец» */
.n2e-group-card-side .n2e-g-open {
	order: 2;
}
.n2e-group-card-side .n2e-group-btn:not(.n2e-g-open),
.n2e-group-card-side .blbutton:not(.n2e-g-open) {
	order: 1;
}
.n2e-group-card-side .n2e-group-btn,
.n2e-group-card-side .blbutton {
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
}
.n2e-group-card-rel {
	color: var(--m02-cyan);
	font-weight: 500;
}
/* Подсветка: моя / участник / подписка */
.friendsElement.n2e-list-card.n2e-group-card.n2e-group-card--mine {
	border-color: rgba(127, 220, 232, 0.7) !important;
	background: rgba(127, 220, 232, 0.09) !important;
	box-shadow: inset 3px 0 0 var(--m02-cyan) !important;
}
.friendsElement.n2e-list-card.n2e-group-card.n2e-group-card--joined {
	border-color: rgba(127, 220, 232, 0.5) !important;
	background: rgba(127, 220, 232, 0.055) !important;
	box-shadow: inset 3px 0 0 rgba(127, 220, 232, 0.75) !important;
}
.friendsElement.n2e-list-card.n2e-group-card.n2e-group-card--sub {
	border-color: rgba(127, 220, 232, 0.38) !important;
	background: rgba(127, 220, 232, 0.035) !important;
	box-shadow: inset 3px 0 0 rgba(127, 220, 232, 0.45) !important;
}
.friendsElement.n2e-list-card.n2e-group-card.n2e-group-card--invited {
	border-color: rgba(127, 220, 232, 0.55) !important;
	background: rgba(127, 220, 232, 0.045) !important;
	box-shadow: inset 3px 0 0 rgba(127, 220, 232, 0.55) !important;
	border-style: dashed !important;
}
.friendsElement.n2e-list-card.n2e-group-card.n2e-group-card--mine:hover,
.friendsElement.n2e-list-card.n2e-group-card.n2e-group-card--joined:hover,
.friendsElement.n2e-list-card.n2e-group-card.n2e-group-card--sub:hover,
.friendsElement.n2e-list-card.n2e-group-card.n2e-group-card--invited:hover {
	background: rgba(127, 220, 232, 0.12) !important;
	border-color: var(--m02-cyan) !important;
}
.friendsElement.n2e-list-card.n2e-group-card.n2e-group-card--mine:hover {
	box-shadow: inset 3px 0 0 var(--m02-cyan) !important;
}
.friendsElement.n2e-list-card.n2e-group-card.n2e-group-card--joined:hover {
	box-shadow: inset 3px 0 0 rgba(127, 220, 232, 0.75) !important;
}
.friendsElement.n2e-list-card.n2e-group-card.n2e-group-card--sub:hover {
	box-shadow: inset 3px 0 0 rgba(127, 220, 232, 0.45) !important;
}
.friendsElement.n2e-list-card.n2e-group-card.n2e-group-card--invited:hover {
	box-shadow: inset 3px 0 0 rgba(127, 220, 232, 0.55) !important;
}
.n2e-group-member-actions {
	margin-left: auto;
	justify-content: flex-end;
	align-items: center;
	max-width: 62%;
}
.n2e-group-roster-section {
	border-color: var(--m02-line) !important;
	background: rgba(127, 220, 232, 0.04) !important;
	border-radius: 10px !important;
}
.n2e-group-roster-section--subs {
	background: transparent !important;
	border-style: dashed !important;
}
.n2e-group-pending-invites {
	border: 1px solid var(--m02-line) !important;
	border-radius: 10px !important;
	background: transparent !important;
}
.n2e-people-focus--admins .n2e-group-roster-section--members,
.n2e-people-focus--admins .n2e-group-roster-section--subs,
.n2e-people-focus--members .n2e-group-roster-section--admins,
.n2e-people-focus--members .n2e-group-roster-section--subs,
.n2e-people-focus--subscribers .n2e-group-roster-section--admins,
.n2e-people-focus--subscribers .n2e-group-roster-section--members {
	display: none !important;
}
.n2e-group-roster-empty {
	color: var(--m02-muted) !important;
}
.n2e-group-roster-label {
	color: var(--m02-cyan) !important;
}
.n2e-group-roster-count {
	border-color: rgba(127, 220, 232, 0.4) !important;
	background: rgba(127, 220, 232, 0.1) !important;
	color: var(--m02-cyan) !important;
}
.n2e-group-act {
	border-color: rgba(127, 220, 232, 0.42) !important;
	background: rgba(127, 220, 232, 0.08) !important;
	color: var(--m02-text) !important;
	font-family: var(--m02-font-ui) !important;
	box-shadow: none !important;
}
.n2e-group-act:hover {
	border-color: var(--m02-cyan) !important;
	background: var(--m02-hover) !important;
	color: var(--m02-cyan) !important;
}
.n2e-group-act--accent {
	border-color: rgba(127, 220, 232, 0.65) !important;
	background: rgba(127, 220, 232, 0.16) !important;
	color: var(--m02-cyan) !important;
	font-weight: 600 !important;
}
.n2e-group-act--accent:hover {
	background: rgba(127, 220, 232, 0.24) !important;
}
.n2e-group-act--danger {
	border-color: rgba(196, 92, 92, 0.55) !important;
	background: rgba(196, 92, 92, 0.1) !important;
	color: #d07070 !important;
}
.n2e-group-act--danger:hover {
	border-color: #d07070 !important;
	background: rgba(196, 92, 92, 0.18) !important;
	color: #e08888 !important;
}
.n2e-group-member-remove {
	margin-left: 0 !important;
	border: 1px solid rgba(196, 92, 92, 0.55) !important;
	background: rgba(196, 92, 92, 0.1) !important;
	box-shadow: none !important;
	color: #d07070 !important;
	cursor: pointer;
}
.n2e-group-member-remove:hover {
	color: #e08888 !important;
	border-color: #d07070 !important;
}
.n2e-group-invite-panel {
	border: none !important;
	background: transparent !important;
	overflow: visible !important;
	max-width: 100% !important;
}
.n2e-group-invite-panel #n2eGroupInviteSearch,
.n2e-group-invite-panel .form-control-user-profile {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}
.n2e-group-invite-results {
	overflow: visible !important;
	max-height: none !important;
}
.n2e-group-members-body.is-invite-mode {
	max-height: 320px !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
}
.n2e-group-pending-invites {
	border-color: transparent !important;
	border-bottom: 1px dashed rgba(127, 220, 232, 0.35) !important;
	background: transparent !important;
}
.n2e-group-pending-title {
	color: var(--m02-cyan) !important;
}
.n2e-group-invite-row {
	border-color: var(--m02-line) !important;
	background: var(--m02-panel) !important;
}
.n2e-group-invite-name {
	color: var(--m02-text) !important;
}
.n2e-group-invite-hint {
	color: var(--m02-muted) !important;
}
.n2e-group-member-actions .blbutton {
	border-color: var(--m02-line) !important;
	color: var(--m02-muted) !important;
	background: transparent !important;
}
.n2e-group-member-actions .blbutton:hover {
	color: var(--m02-cyan) !important;
	border-color: var(--m02-cyan) !important;
}
.n2e-group-actions-bar,
.n2e-group-actions {
	gap: 8px !important;
}
.n2e-group-actions-bar {
	border-top-color: var(--m02-line) !important;
}
.n2e-group-actions-bar .n2e-group-btn,
.n2e-group-actions .n2e-group-btn,
.n2e-group-hero-toolbar .n2e-group-btn {
	color: var(--m02-muted) !important;
	border-color: var(--m02-line) !important;
	background: transparent !important;
	box-shadow: none !important;
}
.n2e-group-actions-bar .n2e-group-btn:hover,
.n2e-group-actions .n2e-group-btn:hover,
.n2e-group-hero-toolbar .n2e-group-btn:hover {
	color: var(--m02-cyan) !important;
	border-color: rgba(127, 220, 232, 0.45) !important;
	background: transparent !important;
}
.n2e-group-back-link {
	color: var(--m02-muted) !important;
	font-size: 0.78rem !important;
	font-family: var(--m02-font-ui) !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	padding: 0 !important;
}
.n2e-group-back-link:hover,
.n2e-group-back-link:focus {
	color: var(--m02-cyan) !important;
	text-decoration: underline;
	background: transparent !important;
	border: none !important;
}
.n2e-group-page-head.n2e-group-hero-dnd.is-dragover,
.n2e-group-hero-avatar.is-dragover {
	background: var(--m02-cyan-soft, rgba(127, 220, 232, 0.12)) !important;
	box-shadow: inset 0 0 0 1px var(--m02-cyan) !important;
}
.n2e-group-actions-bar .n2e-group-btn-primary,
.n2e-group-actions .n2e-group-btn-primary,
.n2e-group-hero-toolbar .n2e-group-btn-primary,
#n2eGroupInviteBtn.n2e-group-btn-primary {
	background: transparent !important;
	border-color: var(--m02-line) !important;
	color: var(--m02-muted) !important;
}
.n2e-group-actions-bar .n2e-group-btn-primary:hover,
.n2e-group-actions .n2e-group-btn-primary:hover,
.n2e-group-hero-toolbar .n2e-group-btn-primary:hover,
#n2eGroupInviteBtn.n2e-group-btn-primary:hover {
	background: transparent !important;
	border-color: rgba(127, 220, 232, 0.5) !important;
	color: var(--m02-cyan) !important;
}
.n2e-group-role-badge {
	border: none !important;
	background: transparent !important;
	color: var(--m02-muted) !important;
	font-family: var(--m02-font-ui) !important;
	font-size: 0.84rem !important;
	font-weight: 500 !important;
	padding: 0 2px !important;
	min-height: var(--n2e-btn-height) !important;
	line-height: 1.2 !important;
}
.n2e-group-role-badge--owner,
.n2e-group-role-badge--admin {
	color: var(--m02-cyan) !important;
	opacity: 0.92;
}
.n2e-group-members-head {
	border-bottom-color: var(--m02-line) !important;
}
.n2e-group-hero-stats {
	gap: 4px 16px;
}
.n2e-group-stat {
	border: none !important;
	border-bottom: 1px solid transparent !important;
	background: transparent !important;
	color: var(--m02-muted) !important;
	font-family: var(--m02-font-ui) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	opacity: 0.85;
	padding: 2px 0 !important;
	min-width: 0 !important;
}
.n2e-group-stat:hover,
.n2e-group-stat.is-active {
	opacity: 1;
	border-color: transparent !important;
	border-bottom-color: rgba(127, 220, 232, 0.4) !important;
	background: transparent !important;
}
.n2e-group-stat-text,
.n2e-group-stat-num {
	color: var(--m02-text) !important;
	font-family: var(--m02-font-ui) !important;
	font-size: 0.84rem !important;
	font-weight: 550 !important;
	opacity: 0.95;
}
.n2e-group-stat-label {
	color: var(--m02-muted) !important;
	font-size: 0.84rem !important;
}
.n2e-group-hero-toolbar {
	border-top-color: var(--m02-line) !important;
}
.n2e-group-post-del {
	border-color: var(--m02-line) !important;
	background: transparent !important;
	color: transparent !important;
	opacity: 0.45;
}
.n2e-group-post-del::before,
.n2e-group-post-del::after {
	background: var(--m02-muted) !important;
}
.n2e-group-post-del:hover {
	opacity: 1;
	border-color: rgba(196, 92, 92, 0.45) !important;
}
.n2e-group-post-del:hover::before,
.n2e-group-post-del:hover::after {
	background: #d07070 !important;
}
.n2e-group-panel-head {
	border-bottom: none !important;
}
.n2e-group-panel-title {
	color: var(--m02-text) !important;
}
.n2e-group-panel-close {
	border-color: var(--m02-line) !important;
	background: transparent !important;
	color: transparent !important;
	box-shadow: none !important;
	border-radius: 8px !important;
}
.n2e-group-panel-close::before,
.n2e-group-panel-close::after {
	background: var(--m02-muted) !important;
}
.n2e-group-panel-close:hover {
	border-color: var(--m02-cyan) !important;
}
.n2e-group-panel-close:hover::before,
.n2e-group-panel-close:hover::after {
	background: var(--m02-cyan) !important;
}
.n2e-group-members-body,
.n2e-group-manage #n2eGroupManageBody,
.n2e-group-manage-body {
	border: none !important;
	background: transparent !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.n2e-group-manage {
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	padding: 0 !important;
}
#n2eGroupSettingsBtn.is-active,
#n2eGroupInviteBtn.is-active {
	border-color: rgba(127, 220, 232, 0.4) !important;
	color: var(--m02-cyan) !important;
	opacity: 1;
}
.n2e-group-members {
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
}
.friendsElement:hover,
.usersInfoElement:hover,
.n2e-group-card:hover {
	box-shadow: none !important;
	border-color: var(--m02-cyan) !important;
	background: var(--m02-hover) !important;
	opacity: 1 !important;
}
.moreFriendElement,
.moreUsersElement {
	text-align: center !important;
	padding: 6px 10px !important;
	margin: 2px auto 8px !important;
	font-size: 0.74rem !important;
	font-weight: 500 !important;
	color: var(--m02-muted) !important;
	cursor: pointer;
	background: transparent !important;
	border-style: dashed !important;
}
.moreFriendElement:hover,
.moreUsersElement:hover {
	color: var(--m02-cyan) !important;
	border-color: var(--m02-cyan) !important;
	background: var(--m02-hover) !important;
	box-shadow: none !important;
	opacity: 1 !important;
}
.friendsHref,
.usersInfoHref {
	display: block;
	width: 100%;
	min-width: 0;
	text-decoration: none !important;
	color: inherit !important;
	margin-bottom: 0;
}
.n2e-list-name {
	display: block;
	font-size: 0.92rem;
	font-weight: 600;
	line-height: 1.35;
	color: var(--m02-text);
	letter-spacing: 0.01em;
	white-space: normal;
	overflow: visible;
	word-break: break-word;
}
.friendsHref:hover .n2e-list-name,
.usersInfoHref:hover .n2e-list-name {
	color: var(--m02-cyan);
}
.n2e-list-hint {
	display: block;
	margin-top: 2px;
	font-size: 0.74rem;
	line-height: 1.35;
	color: var(--m02-muted);
	font-weight: 400;
}
.n2e-list-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	margin-top: 0;
	flex: 0 0 auto;
	max-width: 100%;
}
/* Компактные кнопки списка — без растягивания на всю ширину */
.n2e-list-actions .blbutton,
.friendsElement .n2e-list-actions .blbutton,
.usersInfoElement .n2e-list-actions .blbutton,
.n2e-group-card .blbutton,
.n2e-group-card .n2e-group-btn,
.usersInfoElement > .blbutton {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	flex: 0 0 auto !important;
	margin: 0 !important;
	position: static !important;
	left: auto !important;
	white-space: nowrap;
	box-sizing: border-box !important;
}
/* Пользователи / подписчики / друзья / подписки / приглашения-друзья — один ряд */
.people .n2e-list-actions,
.subscribersView .n2e-list-actions,
.friends .n2e-list-actions,
.subscriptionsView .n2e-list-actions,
.invitationsView .n2e-invite-card:not(.n2e-group-invite-card) .n2e-list-actions {
	flex-wrap: nowrap;
	gap: 6px;
}
.n2e-list-actions .n2e-btn-wide,
.friendsElement .n2e-btn-wide,
.usersInfoElement .n2e-btn-wide {
	display: inline-flex !important;
	width: auto !important;
	flex: 0 0 auto !important;
}
.n2e-list-actions .blbutton:not(.n2e-group-btn-primary):not(.n2e-invite-accept):not(.n2e-sub-accept):not(.n2e-people-accept),
.n2e-group-card .n2e-group-btn:not(.n2e-group-btn-primary):not(.n2e-group-btn-danger) {
	color: var(--m02-muted) !important;
	border-color: var(--m02-line) !important;
}
.n2e-list-actions .blbutton:hover,
.n2e-group-card .blbutton:hover,
.n2e-group-card .n2e-group-btn:hover {
	color: var(--m02-cyan) !important;
	border-color: var(--m02-cyan) !important;
	background: var(--m02-hover) !important;
}
.n2e-group-avatar,
.n2e-group-avatar-lg {
	width: 52px !important;
	height: 52px !important;
	margin: 0 !important;
	padding: 0 !important;
	border-width: 1px !important;
	border-color: var(--m02-line) !important;
	border-radius: 4px !important;
	background: var(--m02-panel) !important;
	object-fit: contain !important;
	object-position: center !important;
	box-sizing: border-box !important;
	box-shadow: none !important;
}
.n2e-group-avatar-lg,
.n2e-group-hero-avatar > .n2e-group-avatar-lg,
.n2e-group-hero-avatar > .n2e-group-avatar-empty {
	width: 104px !important;
	height: auto !important;
	min-height: 104px !important;
	border-radius: 0 !important;
}
.n2e-group-avatar-empty,
.n2e-group-avatar-drop-empty {
	background: var(--m02-cyan-soft) !important;
	border-color: var(--m02-line) !important;
	border-style: dashed !important;
	color: var(--m02-cyan) !important;
	padding: 0 !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
}
.n2e-group-create-row {
	display: flex;
	justify-content: center;
	margin: 8px 0 10px;
}
/* Управление: вкладки по центру; Добавить/Редактировать — в одну строку (десктоп) */
.admin_panel .n2e-admin-tabs {
	justify-content: center !important;
}
.admin_panel .n2e-admin-users-tabs {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	justify-content: center !important;
	align-items: center !important;
	gap: 8px 18px !important;
	padding: 0 !important;
	box-sizing: border-box !important;
	border: none !important;
	border-radius: 0 !important;
	overflow: visible !important;
}
.admin_panel .n2e-admin-users-tabs.change_user_panel_div {
	padding: 0 !important;
	border: none !important;
}
.admin_panel .n2e-admin-users-tabs .change_user_panel {
	display: inline-block !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	flex: 0 0 auto !important;
	margin: 0 !important;
	padding: 8px 6px 10px !important;
	font-size: 0.88rem !important;
	font-weight: 500 !important;
	line-height: 1.35 !important;
	white-space: nowrap !important;
	text-align: center !important;
}
/* Модалка создания группы */
.n2e-group-create-bg.popupBackground {
	z-index: 12040 !important;
}
.n2e-group-create-modal.popupContacts,
#n2eGroupCreateModal.n2e-group-create-modal {
	z-index: 12050 !important;
	height: auto !important;
	min-height: 0 !important;
	width: min(560px, calc(100vw - 32px)) !important;
	max-width: 560px !important;
	padding: 24px 26px 20px !important;
	background: var(--m02-panel, #152028) !important;
	border: 1px solid var(--m02-line, rgba(127, 220, 232, 0.45)) !important;
	border-radius: 12px !important;
	box-shadow: 0 12px 36px rgba(0, 0, 0, 0.55) !important;
	color: var(--m02-text, #d7e6ee) !important;
	box-sizing: border-box !important;
	text-align: center !important;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.n2e-group-create-modal.is-dragover,
#n2eGroupCreateModal.n2e-group-create-modal.is-dragover {
	border-color: var(--m02-cyan) !important;
	box-shadow: 0 0 0 2px rgba(127, 220, 232, 0.35), 0 12px 36px rgba(0, 0, 0, 0.55) !important;
}
.n2e-group-create-modal.is-dragover::after {
	content: "Отпустите фото сюда";
	position: absolute;
	left: 12px;
	right: 12px;
	top: 12px;
	bottom: 12px;
	z-index: 5;
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
	background: rgba(21, 32, 40, 0.82);
	border: 1px dashed var(--m02-cyan);
	color: var(--m02-cyan);
	font-size: 0.95rem;
	font-weight: 600;
	letter-spacing: 0.02em;
}
.n2e-group-create-modal .n2e-group-create-title,
#n2eGroupCreateModal .n2e-group-create-title {
	margin: 0 0 16px !important;
	padding: 0 !important;
	font-size: 1.05rem !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	color: var(--m02-text) !important;
}
.n2e-group-create-head {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	margin: 0 0 12px;
	text-align: left;
}
.n2e-group-create-avatar {
	position: relative;
	flex: 0 0 96px;
	width: 96px;
	cursor: pointer;
	outline: none;
}
.n2e-group-create-avatar-preview {
	width: 96px;
	height: 96px;
	border: 1px dashed var(--m02-line);
	box-sizing: border-box;
	overflow: hidden;
	background: var(--m02-panel);
}
.n2e-group-create-avatar.has-file .n2e-group-create-avatar-preview {
	border-style: solid;
}
.n2e-group-create-avatar.is-dragover .n2e-group-create-avatar-preview {
	border-color: var(--m02-cyan);
	background: var(--m02-hover, rgba(127, 220, 232, 0.08));
}
.n2e-group-create-avatar-empty {
	width: 100% !important;
	height: 100% !important;
	min-height: 96px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 0.72rem !important;
	letter-spacing: 0.04em;
}
.n2e-group-create-avatar-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}
.n2e-group-create-avatar-hint {
	display: block;
	margin-top: 4px;
	font-size: 0.66rem;
	color: var(--m02-muted);
	text-align: center;
}
.n2e-group-create-avatar-remove {
	position: absolute;
	top: 2px;
	right: 2px;
	z-index: 2;
	width: 22px;
	height: 22px;
	padding: 0;
	border: 1px solid var(--m02-line);
	border-radius: 2px;
	background: rgba(0, 0, 0, 0.55);
	cursor: pointer;
}
.n2e-group-create-avatar-remove::before,
.n2e-group-create-avatar-remove::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 10px;
	height: 2px;
	background: #fff;
}
.n2e-group-create-avatar-remove::before {
	transform: translate(-50%, -50%) rotate(45deg);
}
.n2e-group-create-avatar-remove::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}
.n2e-group-create-head-fields {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.n2e-group-create-modal .n2e-group-form-field {
	margin: 0 0 12px !important;
	max-width: none !important;
	text-align: left !important;
}
.n2e-group-create-head-fields .n2e-group-form-field {
	margin: 0 !important;
}
.n2e-group-create-modal .n2e-group-textarea {
	height: auto !important;
	min-height: 96px !important;
	resize: none !important;
}
.n2e-group-create-modal .n2e-group-textarea::-webkit-resizer {
	display: none !important;
}
.n2e-group-create-modal .n2e-group-form-field .form-control-user-profile,
.n2e-group-create-modal .n2e-group-form-dropdown .forgroups_vis {
	width: 100% !important;
	box-sizing: border-box !important;
	padding: 6px 10px !important;
	margin: 0 !important;
	text-align: center !important;
}
.n2e-group-create-modal #n2eNewGroupName,
.n2e-group-create-modal #fake_n2eNewGroupVis {
	text-align: center !important;
}
.n2e-group-create-modal #n2eNewGroupName::placeholder {
	text-align: center !important;
	opacity: 0.85;
}
/* WebKit: placeholder наследует text-align от input; Firefox — отдельно */
.n2e-group-create-modal #n2eNewGroupName::-webkit-input-placeholder {
	text-align: center;
}
.n2e-group-create-modal #n2eNewGroupName::-moz-placeholder {
	text-align: center;
	opacity: 0.85;
}
.n2e-group-create-modal .n2e-group-create-actions {
	display: flex !important;
	gap: 8px 10px !important;
	justify-content: center !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	margin: 8px 0 0 !important;
	width: 100% !important;
}
.n2e-group-create-modal .n2e-group-create-actions .blbutton {
	flex: 0 0 auto !important;
	margin: 0 !important;
	width: auto !important;
	min-width: 0 !important;
	color: var(--m02-muted) !important;
	border: 1px solid var(--m02-line) !important;
	background: transparent !important;
	box-shadow: none !important;
}
.n2e-group-create-modal .n2e-group-create-actions .blbutton:hover {
	color: var(--m02-cyan) !important;
	border-color: var(--m02-cyan) !important;
	background: var(--m02-hover) !important;
}
.n2e-group-member-avatar.n2e-user-avatar,
.n2e-group-member-avatar {
	width: 36px !important;
	height: 36px !important;
	flex-shrink: 0;
	padding: 0 !important;
	margin: 1px 0 0 0 !important;
}
.n2e-group-body {
	gap: 2px !important;
}
.n2e-group-name {
	font-size: 0.9rem !important;
	font-weight: 600 !important;
}
.n2e-group-meta,
.n2e-group-desc {
	font-size: 0.74rem !important;
	color: var(--m02-muted) !important;
}
.n2e-group-meta {
	font-size: 0.84rem !important;
}
.n2e-group-desc {
	font-size: 0.84rem !important;
}
.popupContacts .blbutton,
.popupDeleteFriend .blbutton,
.popupDeleteAccount .blbutton,
.HighLevelModal .blbutton,
.n2e-confirm-modal .blbutton,
.n2e-group-confirm .blbutton,
.n2e-msg-quiet-btn,
.n2e-popup-actions .blbutton,
.n2e-popup-actions .n2e-msg-quiet-btn {
	appearance: none !important;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	display: inline-grid !important;
	place-items: center !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	min-width: 0 !important;
	flex: 0 0 auto !important;
	margin: 0 !important;
	position: static !important;
	left: auto !important;
	border: 1px solid var(--m02-line) !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--m02-muted) !important;
	font-family: var(--m02-font-ui) !important;
	font-size: var(--n2e-btn-font) !important;
	font-weight: var(--n2e-btn-weight) !important;
	letter-spacing: var(--n2e-btn-tracking) !important;
	text-align: center !important;
	vertical-align: middle !important;
	cursor: pointer;
	line-height: 1 !important;
	padding: 0 var(--n2e-btn-pad-x) !important;
	height: var(--n2e-btn-height) !important;
	min-height: var(--n2e-btn-height) !important;
	max-height: var(--n2e-btn-height) !important;
	box-sizing: border-box !important;
}
.popupContacts .blbutton::-moz-focus-inner,
.popupDeleteFriend .blbutton::-moz-focus-inner,
.popupDeleteAccount .blbutton::-moz-focus-inner,
.HighLevelModal .blbutton::-moz-focus-inner,
.n2e-confirm-modal .blbutton::-moz-focus-inner,
.n2e-group-confirm .blbutton::-moz-focus-inner,
.n2e-popup-actions .blbutton::-moz-focus-inner,
.n2e-popup-actions .n2e-msg-quiet-btn::-moz-focus-inner,
button.blbutton::-moz-focus-inner {
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
}
/* Подпись по центру: Firefox рисует текст кнопки ниже середины */
.n2e-blbutton-label {
	display: block !important;
	line-height: 1 !important;
	margin: 0 !important;
	padding: 0 !important;
	transform: translateY(-1px);
}
@supports (-moz-appearance: none) {
	.popupContacts .blbutton,
	.popupDeleteFriend .blbutton,
	.popupDeleteAccount .blbutton,
	.HighLevelModal .blbutton,
	.n2e-confirm-modal .blbutton,
	.n2e-group-confirm .blbutton,
	.n2e-popup-actions .blbutton {
		padding-top: 0 !important;
		padding-bottom: 2px !important;
	}
	.n2e-blbutton-label {
		transform: translateY(-1.5px);
	}
}
.popupContacts .blbutton:hover,
.popupDeleteFriend .blbutton:hover,
.popupDeleteAccount .blbutton:hover,
.HighLevelModal .blbutton:hover,
.n2e-confirm-modal .blbutton:hover,
.n2e-group-confirm .blbutton:hover,
.n2e-msg-quiet-btn:hover,
.n2e-popup-actions .blbutton:hover,
.n2e-popup-actions .n2e-msg-quiet-btn:hover {
	color: var(--m02-cyan) !important;
	border-color: var(--m02-cyan) !important;
	background: var(--m02-hover) !important;
}
.n2e-popup-actions {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px 10px !important;
	flex-wrap: wrap !important;
	width: 100%;
	box-sizing: border-box;
}
.n2e-popup-actions .blbutton {
	margin: 0 !important;
}
.friendsListCount,
.n2e-group-list-count {
	color: var(--m02-muted) !important;
	font-size: 0.84rem !important;
}

/* —— Groups empty avatar + dropdown —— */
.n2e-group-avatar,
.n2e-group-avatar-lg {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	object-fit: contain;
	object-position: center;
	overflow: hidden;
}
.n2e-group-members-title {
	color: var(--m02-text) !important;
}
.n2e-group-member {
	border-color: var(--m02-line) !important;
	background: var(--m02-panel) !important;
	border-radius: 8px !important;
}
.n2e-group-member.is-friend {
	border-color: rgba(127, 220, 232, 0.55) !important;
}
.n2e-group-member.is-subscriber {
	border-style: dashed !important;
	background: transparent !important;
}
.n2e-group-member-name {
	color: var(--m02-text) !important;
}
.n2e-group-member-name:hover {
	color: var(--m02-cyan) !important;
}
.n2e-group-member-role,
.n2e-group-member-friend,
.n2e-group-members-locked {
	color: var(--m02-muted) !important;
	border-color: var(--m02-line) !important;
	background: rgba(127, 220, 232, 0.06) !important;
}
.n2e-group-member-role--owner,
.n2e-group-member-role--admin,
.n2e-group-member-friend {
	color: var(--m02-cyan) !important;
	border-color: rgba(127, 220, 232, 0.45) !important;
	background: rgba(127, 220, 232, 0.12) !important;
}
.n2e-group-members-locked {
	border: none !important;
	background: transparent !important;
}
.n2e-group-member-avatar {
	border-color: var(--m02-line) !important;
	background: var(--m02-panel) !important;
}
.n2e-group-member-avatar.n2e-group-avatar-empty {
	background: var(--m02-cyan-soft) !important;
	color: var(--m02-cyan) !important;
}
.n2e-group-create-row #n2eGroupCreateBtn,
#n2eGroupCreateBtn.n2e-group-btn {
	width: auto !important;
	min-width: 0 !important;
	color: var(--m02-muted) !important;
	border: 1px dashed var(--m02-line) !important;
	background: transparent !important;
	box-shadow: none !important;
	margin: 0 !important;
}
#n2eGroupCreateBtn.n2e-group-btn:hover {
	color: var(--m02-cyan) !important;
	border-color: var(--m02-cyan) !important;
	border-style: solid !important;
	background: transparent !important;
}
.n2e-group-avatar-initials {
	font-family: var(--m02-font-ui);
	font-size: 1.05rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	line-height: 1;
	user-select: none;
}
.n2e-group-avatar-lg .n2e-group-avatar-initials {
	font-size: 1.35rem;
}
.n2e-zitar-cities {
	margin: 0.35rem 0 0.75rem;
	padding: 0.5rem 0.65rem;
	border: 1px solid var(--m02-line);
	border-radius: 10px;
	background: var(--m02-panel);
}
.n2e-zitar-cities[hidden] {
	display: none !important;
}
.n2e-zitar-cities-title {
	font-size: 0.72rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--m02-accent, #0aa);
	margin: 0 0 0.4rem;
}
.n2e-zitar-cities-list {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	max-height: 9.5rem;
	overflow-y: auto;
	overscroll-behavior: contain;
}
.n2e-zitar-city-item {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin: 0;
	font-size: 0.9rem;
	color: var(--m02-text);
	cursor: pointer;
	user-select: none;
}
.n2e-zitar-city-item input {
	margin: 0;
	flex: 0 0 auto;
}
.n2e-zitar-city-item span {
	line-height: 1.25;
}

.n2e-group-form-dropdown .forgroups_vis {
	color: var(--m02-text) !important;
}
.groups_visDiv,
.maritalDiv,
.division_accessDiv,
.structure_accessDiv,
.admin_level_accessDiv,
.division_accessDiv_reg,
.structure_accessDiv_reg,
.admin_level_accessDiv_reg {
	background: var(--m02-panel) !important;
	border: 1px solid var(--m02-line) !important;
	border-radius: 10px !important;
	box-shadow: none !important;
	max-height: 220px;
	overflow-x: hidden;
	overflow-y: auto;
	z-index: 30 !important;
	overscroll-behavior: contain;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
	/* устойчивые края: скролл не уезжает текст влево */
	scrollbar-gutter: stable both-edges;
}
.n2e-admin-select-wrap {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	box-sizing: border-box !important;
	position: relative !important;
}
.fordivision_access,
.forstructure_access,
.foradmin_level_access,
.fordivision_access_reg,
.forstructure_access_reg,
.foradmin_level_access_reg,
#fake_division_access,
#fake_structure_access,
#fake_admin_level_access,
#fake_division_access_reg,
#fake_structure_access_reg,
#fake_admin_level_access_reg {
	padding: 6px 0 !important;
	text-align: center !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	color: var(--m02-text) !important;
	cursor: pointer;
	position: relative;
}
#fake_admin_level_access::after,
#fake_admin_level_access_reg::after,
#fake_division_access::after,
#fake_division_access_reg::after {
	content: "▾";
	position: absolute;
	right: 4px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 0.7rem;
	opacity: 0.65;
	color: var(--m02-muted);
	pointer-events: none;
}
#fake_division_access.n2e-settings-placeholder,
#fake_structure_access.n2e-settings-placeholder,
#fake_admin_level_access.n2e-settings-placeholder,
#fake_division_access_reg.n2e-settings-placeholder,
#fake_structure_access_reg.n2e-settings-placeholder,
#fake_admin_level_access_reg.n2e-settings-placeholder {
	color: var(--m02-muted) !important;
	font-weight: 400 !important;
}
.division_accessSpan,
.structure_accessSpan,
.admin_level_accessSpan,
.division_accessSpan_reg,
.structure_accessSpan_reg,
.admin_level_accessSpan_reg {
	background: var(--m02-panel) !important;
	color: var(--m02-text) !important;
	border-bottom: 1px solid var(--m02-line) !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	padding: 8px 12px !important;
	text-align: center !important;
	display: block !important;
}
/* Шлюз должен перебить display:block !important выше */
.admin_level_accessSpan[hidden],
.admin_level_accessSpan_reg[hidden],
.admin_level_accessSpan.n2e-admin-level-gated,
.admin_level_accessSpan_reg.n2e-admin-level-gated,
.division_accessSpan[hidden],
.structure_accessSpan[hidden],
.division_accessSpan_reg[hidden],
.structure_accessSpan_reg[hidden] {
	display: none !important;
}
.modalElementEditUser .division_accessDiv,
.modalElementEditUser .structure_accessDiv,
.modalElementEditUser .admin_level_accessDiv,
.admin_panel .division_accessDiv_reg,
.admin_panel .structure_accessDiv_reg,
.admin_panel .admin_level_accessDiv_reg,
#AdminAddUser .division_accessDiv_reg,
#AdminAddUser .admin_level_accessDiv_reg {
	position: absolute !important;
	display: none;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	top: calc(100% + 2px) !important;
	bottom: auto !important;
	z-index: 40 !important;
	background: var(--m02-panel) !important;
	border: 1px solid var(--m02-line) !important;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35);
}
.modalElementEditUser .division_accessDiv.n2e-admin-select-drop--up,
.modalElementEditUser .structure_accessDiv.n2e-admin-select-drop--up,
.modalElementEditUser .admin_level_accessDiv.n2e-admin-select-drop--up,
.admin_panel .division_accessDiv_reg.n2e-admin-select-drop--up,
.admin_panel .structure_accessDiv_reg.n2e-admin-select-drop--up,
.admin_panel .admin_level_accessDiv_reg.n2e-admin-select-drop--up,
.n2e-admin-select-wrap .n2e-admin-select-drop--up {
	top: auto !important;
	bottom: calc(100% + 2px) !important;
}
.modalElementEditUser {
	scrollbar-gutter: stable;
}
.groups_visSpan,
.maritalSpan {
	background: var(--m02-panel) !important;
	color: var(--m02-text) !important;
	border-bottom: 1px solid var(--m02-line) !important;
	width: 100% !important;
	box-sizing: border-box;
	text-align: center !important;
}
.groups_visSpan:hover,
.maritalSpan:hover,
.division_accessSpan:hover,
.structure_accessSpan:hover,
.admin_level_accessSpan:hover,
.division_accessSpan_reg:hover,
.structure_accessSpan_reg:hover,
.admin_level_accessSpan_reg:hover {
	background: var(--m02-cyan-soft) !important;
	color: var(--m02-cyan) !important;
}
select,
select option {
	background-color: var(--m02-panel);
	color: var(--m02-text);
}

/* —— Hover настроек / админки (без лаванды/белого) —— */
.userbutton:hover,
.confidencial_additional:hover,
.change_user_panel:hover,
.confidencialfilter:hover,
.radioGenderPointer:hover {
	background: var(--m02-cyan-soft) !important;
	color: var(--m02-text) !important;
}
.n2e-group-filter-div .change_user_panelActive:hover,
.change_user_panelActive:hover {
	color: var(--m02-cyan) !important;
	border-bottom-color: var(--m02-cyan) !important;
	box-shadow: none !important;
}
/* Настройки — тот же язык листа k/v, что у публичного профиля */
#profile.profileUserCSS,
#profile {
	text-align: center;
}
#profile .n2e-settings-sheet {
	text-align: left;
}
#AdminAddUser.n2e-admin-sheet {
	max-width: 560px;
	margin: 0 auto 16px;
	box-sizing: border-box;
	text-align: left;
}
.modalElementEditUser.n2e-admin-sheet {
	box-sizing: border-box;
	text-align: left;
}
#profile .n2e-settings-block,
#profile .n2e-ug-settings-block,
#profile .additionalInformation,
#profile .updateAddInfo,
#AdminAddUser .n2e-settings-block,
.modalElementEditUser .n2e-settings-block {
	width: 100% !important;
	max-width: 560px !important;
	left: auto !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 0 !important;
	text-align: left;
	box-sizing: border-box;
}
#AdminAddUser .n2e-settings-block,
.modalElementEditUser .n2e-settings-block {
	max-width: 100% !important;
}
#profile .n2e-settings-block {
	margin-top: 8px;
	margin-bottom: 4px;
}
#profile .additionalInformation {
	margin: 4px auto 0 !important;
}
#profile .showHideAddInfo {
	display: block;
	width: 100% !important;
	max-width: 100%;
	padding: 14px 0 8px !important;
	margin: 0 auto !important;
	text-align: center !important;
	background: transparent !important;
	border: none !important;
	color: var(--m02-muted) !important;
	font-size: 0.88rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.03em !important;
	cursor: pointer;
}
#profile .showHideAddInfo:hover {
	color: var(--m02-cyan) !important;
	opacity: 1;
}
#profile .updateAddInfo {
	text-align: left;
	margin-bottom: 12px !important;
	overflow-anchor: none;
}
#profile .additionalInformation {
	overflow-anchor: none;
}
#profile .n2e-settings-row,
#AdminAddUser .n2e-settings-row,
.modalElementEditUser .n2e-settings-row {
	display: grid;
	grid-template-columns: minmax(100px, 30%) 1fr;
	gap: 6px 12px;
	align-items: center;
	margin: 0;
	padding: 6px 4px 8px;
	border-bottom: 1px solid var(--m02-line);
	text-align: left;
	box-sizing: border-box;
}
#profile .n2e-settings-row--choice,
#AdminAddUser .n2e-settings-row--choice,
.modalElementEditUser .n2e-settings-row--choice {
	align-items: center;
}
#profile .n2e-settings-v,
#AdminAddUser .n2e-settings-v,
.modalElementEditUser .n2e-settings-v {
	position: relative;
	min-width: 0;
	width: 100%;
}
#profile .n2e-settings-v input.form-control,
#profile .n2e-settings-v .form-control-user-profile,
#profile .n2e-settings-v textarea.form-control-user-profile,
#profile .n2e-settings-v .forMarital,
#profile .n2e-settings-v #fakeMarital,
#AdminAddUser .n2e-settings-v input.form-control,
#AdminAddUser .n2e-settings-v .form-control-user-profile,
.modalElementEditUser .n2e-settings-v input.form-control,
.modalElementEditUser .n2e-settings-v .form-edit-user-profile,
.modalElementEditUser .n2e-settings-v .fordivision_access,
.modalElementEditUser .n2e-settings-v .forstructure_access,
.modalElementEditUser .n2e-settings-v .foradmin_level_access,
#AdminAddUser .n2e-settings-v .fordivision_access_reg,
#AdminAddUser .n2e-settings-v .forstructure_access_reg,
#AdminAddUser .n2e-settings-v .foradmin_level_access_reg {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	display: block !important;
	box-sizing: border-box !important;
	text-align: center !important;
	padding: 6px 18px 6px 0 !important;
}
#profile .n2e-settings-select,
#AdminAddUser .n2e-admin-select-wrap,
.modalElementEditUser .n2e-admin-select-wrap {
	position: relative;
	display: block;
	width: 100%;
}
#profile .n2e-settings-tabs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px 16px;
	border: none !important;
	background: transparent !important;
	padding: 0 !important;
	margin: 0 !important;
	text-align: left !important;
}
#AdminAddUser .n2e-settings-tabs,
.modalElementEditUser .n2e-settings-tabs {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center;
	justify-content: center;
	gap: 8px 20px;
	border: none !important;
	background: transparent !important;
	padding: 0 !important;
	margin: 0 !important;
	text-align: center !important;
	width: 100%;
	box-sizing: border-box;
}
#AdminAddUser .n2e-settings-tabs > input[type="hidden"],
.modalElementEditUser .n2e-settings-tabs > input[type="hidden"] {
	position: absolute !important;
	width: 0 !important;
	height: 0 !important;
	opacity: 0 !important;
	pointer-events: none !important;
}
#profile .confidencial_additional,
#profile .messages_access_opt,
#profile .hidden_chats_btn_opt,
#profile .radioGenderPointer {
	display: inline-block !important;
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 6px 2px 8px !important;
	background: transparent !important;
	border: none !important;
	border-bottom: 2px solid transparent !important;
	color: var(--m02-label) !important;
	font-weight: 600 !important;
	cursor: pointer;
}
.modalElementEditUser .n2e-settings-row--choice,
#AdminAddUser .n2e-settings-row--choice {
	align-items: center;
}
.modalElementEditUser .n2e-settings-row--choice .n2e-profile-k,
#AdminAddUser .n2e-settings-row--choice .n2e-profile-k {
	padding-top: 0;
}
.modalElementEditUser .n2e-settings-row--choice .n2e-settings-tabs,
#AdminAddUser .n2e-settings-row--choice .n2e-settings-tabs {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	justify-content: center;
	align-items: center;
	gap: 8px 24px;
	width: 100%;
	box-sizing: border-box;
}
#AdminAddUser .n2e-settings-tabs .change_user_panel,
.modalElementEditUser .n2e-settings-tabs .change_user_panel {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: auto !important;
	min-width: 52px !important;
	max-width: none !important;
	flex: 0 0 auto !important;
	margin: 0 !important;
	padding: 6px 12px 8px !important;
	background: transparent !important;
	border: none !important;
	border-bottom: 2px solid transparent !important;
	color: var(--m02-label) !important;
	font-weight: 600 !important;
	font-size: 0.85rem !important;
	text-align: center !important;
	cursor: pointer;
	box-sizing: border-box;
	white-space: nowrap !important;
}
#profile .confidencial_additional:hover,
#profile .messages_access_opt:hover,
#profile .hidden_chats_btn_opt:hover,
#profile .radioGenderPointer:hover,
#AdminAddUser .n2e-settings-tabs .change_user_panel:hover,
.modalElementEditUser .n2e-settings-tabs .change_user_panel:hover {
	background: transparent !important;
	color: var(--m02-text) !important;
}
#profile .confidencial_additionalActive,
#profile .messages_access_optActive,
#profile .hidden_chats_btn_optActive,
#profile .radioGenderPointerActive,
#AdminAddUser .n2e-settings-tabs .change_user_panelActive,
#AdminAddUser .n2e-settings-tabs .change_user_panelActive:hover,
.modalElementEditUser .n2e-settings-tabs .change_user_panelActive,
.modalElementEditUser .n2e-settings-tabs .change_user_panelActive:hover {
	background: transparent !important;
	color: var(--m02-cyan) !important;
	border-bottom-color: var(--m02-cyan) !important;
	box-shadow: none !important;
}
#profile .n2e-gender-label,
#profile .radioGender.n2e-gender-label {
	display: block !important;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.2;
}
#profile .n2e-settings-row--choice > .n2e-profile-k {
	padding: 0 !important;
	line-height: 1.2;
	align-self: center;
}
#profile .n2e-settings-actions,
#AdminAddUser .n2e-settings-actions,
.modalElementEditUser .n2e-settings-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px 14px;
	max-width: 560px;
	margin: 16px auto 6px;
}
.modalElementEditUser .n2e-settings-actions {
	max-width: 100%;
}
.modalElementEditUser .n2e-admin-account-flags {
	margin-top: 14px;
	padding: 10px 6px 4px;
	border-top: 1px solid var(--m02-line);
	background: rgba(127, 220, 232, 0.04);
	box-sizing: border-box;
}
.modalElementEditUser .n2e-admin-account-flags-title {
	margin: 0 0 6px;
	padding: 0 4px 4px;
	font-size: 0.68rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--m02-cyan);
	opacity: 0.9;
}
.modalElementEditUser .n2e-admin-account-flags .n2e-settings-row {
	border-bottom-color: rgba(127, 220, 232, 0.18);
}
.modalElementEditUser .n2e-admin-account-flags .n2e-profile-k {
	color: var(--m02-text) !important;
}
.modalElementEditUser .n2e-admin-account-flags #banned_account_yes.change_user_panelActive,
.modalElementEditUser .n2e-admin-account-flags #deleted_account_yes.change_user_panelActive {
	color: #e8a0a0 !important;
	border-bottom-color: #e8a0a0 !important;
}
.modalElementEditUser .n2e-admin-purge-wrap {
	margin: 12px 0 8px;
	padding: 0;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	text-align: center;
}
.modalElementEditUser .n2e-admin-purge-wrap .n2e-admin-purge-field {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 0 10px !important;
	box-sizing: border-box !important;
	text-align: center !important;
	padding: 6px 10px !important;
	line-height: 1.35 !important;
	font-size: 0.84rem !important;
}
.modalElementEditUser .n2e-admin-purge-wrap .n2e-admin-purge-field::placeholder {
	text-align: center;
	opacity: 1;
}
.modalElementEditUser .n2e-admin-purge-wrap .n2e-admin-purge-basis {
	resize: none !important;
	overflow-x: hidden;
	overflow-y: hidden;
	min-height: calc(1.35em + 12px);
	height: calc(1.35em + 12px);
	max-height: calc(1.35em * 3 + 12px);
	field-sizing: fixed;
}
.modalElementEditUser .n2e-admin-purge-wrap .n2e-admin-purge-basis::-webkit-resizer {
	display: none;
}
.modalElementEditUser .n2e-admin-purge-btn {
	width: auto !important;
	min-width: 0 !important;
	margin: 0 auto !important;
	color: #e8a0a0 !important;
	border-color: #e8a0a0 !important;
	background: transparent !important;
}
.modalElementEditUser .n2e-admin-purge-btn:hover {
	color: #fff !important;
	background: #8b3a3a !important;
	border-color: #8b3a3a !important;
}
.modalElementEditUser .n2e-admin-purge-hint {
	margin: 8px 0 0;
	font-size: 0.72rem;
	line-height: 1.35;
	color: var(--m02-muted, #8a9aa8);
	opacity: 0.9;
}
#profile .n2e-settings-actions .button-change-pass-profile,
#AdminAddUser .n2e-settings-actions .blbutton,
.modalElementEditUser .n2e-settings-actions .blbutton {
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	flex: 0 1 auto;
	max-width: none;
	color: var(--m02-muted) !important;
	border: 1px solid var(--m02-line) !important;
	background: transparent !important;
	box-shadow: none !important;
}
#profile .n2e-settings-actions .button-change-pass-profile:hover:not(:disabled),
#AdminAddUser .n2e-settings-actions .blbutton:hover:not(:disabled),
.modalElementEditUser .n2e-settings-actions .blbutton:hover:not(:disabled) {
	color: var(--m02-cyan) !important;
	border-color: var(--m02-cyan) !important;
	background: transparent !important;
}
#profile .n2e-settings-actions .button-change-pass-profile:disabled {
	opacity: 0.4;
}
#AdminAddUser .password_admin,
.modalElementEditUser .password_admin {
	position: relative;
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 0 !important;
	font-size: inherit !important;
}
#AdminAddUser .password-control_admin,
.modalElementEditUser .password-control_admin {
	position: static !important;
	right: auto !important;
	left: auto !important;
	top: auto !important;
	transform: none !important;
	width: auto !important;
	flex: 0 0 auto;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--m02-muted) !important;
	font-size: 0.75rem !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	white-space: nowrap;
	cursor: pointer;
}
#AdminAddUser .password-control_admin:hover,
.modalElementEditUser .password-control_admin:hover {
	color: var(--m02-cyan) !important;
}
#AdminAddUser .password_admin input,
.modalElementEditUser .password_admin input {
	flex: 1 1 auto;
	min-width: 0;
	padding-right: 0 !important;
	width: auto !important;
}
/* Контрол очистки даты — × на той же строке, что поле */
.n2e-date-wrap {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: 8px;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}
.n2e-date-wrap > input[type="date"],
.n2e-date-wrap > input[type="text"] {
	flex: 1 1 auto;
	min-width: 0;
	box-sizing: border-box !important;
}
.n2e-date-wrap > input[type="date"]::-webkit-datetime-edit,
.n2e-date-wrap > input[type="date"]::-webkit-datetime-edit-fields-wrapper {
	padding: 0;
}
#profile .n2e-settings-v.n2e-date-wrap {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: center;
	gap: 8px;
}
#profile .n2e-date-wrap > input.form-control,
#profile .n2e-date-wrap > input.form-control-user-profile,
#profile .n2e-date-wrap > input[type="date"] {
	flex: 1 1 0% !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	display: block !important;
}
#profile .n2e-date-wrap > .msgbox {
	flex: 1 0 100%;
	order: 5;
}
.n2e-date-clear {
	appearance: none;
	-webkit-appearance: none;
	display: block !important;
	flex: 0 0 auto;
	align-self: center;
	position: relative;
	margin: 0 !important;
	padding: 0 !important;
	width: 28px;
	min-width: 28px;
	height: 28px;
	border: 1px solid var(--m02-line);
	background: transparent;
	color: transparent;
	font-size: 0 !important;
	line-height: 0 !important;
	cursor: pointer;
	box-sizing: border-box;
	overflow: hidden;
}
/* Геометрический × — глиф шрифта сидит низко в em-box */
.n2e-date-clear::before,
.n2e-date-clear::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 12px;
	height: 1.5px;
	margin: 0;
	padding: 0;
	background: var(--m02-muted);
	pointer-events: none;
}
.n2e-date-clear::before {
	transform: translate(-50%, -50%) rotate(45deg);
}
.n2e-date-clear::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}
.n2e-date-clear:hover {
	border-color: var(--m02-cyan);
}
.n2e-date-clear:hover::before,
.n2e-date-clear:hover::after {
	background: var(--m02-cyan);
}
.n2e-date-clear[hidden] {
	display: none !important;
}
#profile h1 {
	color: var(--m02-text) !important;
	font-family: var(--m02-font-ui) !important;
	letter-spacing: 0.02em;
	text-align: center;
}
.modalElementEditUser h4 {
	text-align: center;
	margin-bottom: 12px;
}
#profile .maritalDiv {
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	box-sizing: border-box;
}
#profile .additionalInformation .n2e-settings-row,
#profile .n2e-settings-row--multiline {
	align-items: center;
}
/* Семейное положение — подпись и значение слева */
#profile .n2e-settings-row--marital {
	align-items: center;
}
#profile .n2e-settings-row--marital > .n2e-profile-k {
	text-align: left !important;
}
#profile .n2e-settings-row--marital .n2e-settings-v,
#profile .n2e-settings-row--marital .n2e-settings-select,
#profile .n2e-settings-row--marital #fakeMarital,
#profile .n2e-settings-row--marital .forMarital {
	text-align: left !important;
}
/* Страна … О себе — слева, подпись и значение на одной линии */
#profile .updateAddInfo .n2e-settings-row:not(.n2e-settings-row--choice):not(.n2e-settings-row--marital):not(.n2e-hidden-pin-settings) {
	align-items: center;
}
#profile .updateAddInfo .n2e-settings-row:not(.n2e-settings-row--choice):not(.n2e-settings-row--marital):not(.n2e-hidden-pin-settings) > .n2e-profile-k {
	text-align: left !important;
	padding-top: 0 !important;
	line-height: 1.4 !important;
	align-self: center;
}
#profile .updateAddInfo .n2e-settings-row:not(.n2e-settings-row--choice):not(.n2e-settings-row--marital):not(.n2e-hidden-pin-settings) .n2e-settings-v input.form-control,
#profile .updateAddInfo .n2e-settings-row:not(.n2e-settings-row--choice):not(.n2e-settings-row--marital):not(.n2e-hidden-pin-settings) .n2e-settings-v .form-control-user-profile,
#profile .updateAddInfo .n2e-settings-row:not(.n2e-settings-row--choice):not(.n2e-settings-row--marital):not(.n2e-hidden-pin-settings) .n2e-settings-v textarea.form-control-user-profile,
#profile .updateAddInfo .n2e-settings-row:not(.n2e-settings-row--choice):not(.n2e-settings-row--marital):not(.n2e-hidden-pin-settings) .n2e-settings-v input[type="tel"] {
	text-align: left !important;
	padding: 6px 0 !important;
}
#profile .n2e-hidden-pin-settings {
	align-items: start;
}
#profile .n2e-hidden-pin-settings > .n2e-profile-k {
	align-self: start;
	padding-top: 8px !important;
	cursor: help;
}
#profile .n2e-hidden-pin-box {
	gap: 2px !important;
}
#profile .n2e-hidden-pin-box > input.form-control-user-profile,
#profile .n2e-hidden-pin-box > input.form-control {
	margin: 0 !important;
	padding: 4px 0 !important;
	min-height: 0 !important;
	height: auto !important;
	line-height: 1.35 !important;
}
#profile .n2e-hidden-pin-box > input[hidden] {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	border: none !important;
}
#profile .n2e-hidden-pin-actions {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap;
	justify-content: center !important;
	align-items: center;
	gap: 6px !important;
	margin: 4px 0 0 !important;
	padding: 0 !important;
	width: 100%;
}
#profile .n2e-hidden-pin-actions .blbutton {
	flex: 0 0 auto !important;
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
}

#profile .n2e-settings-textarea,
#profile textarea.form-control-user-profile {
	width: 100% !important;
	max-width: 100% !important;
	min-height: 0 !important;
	height: auto;
	margin: 0 !important;
	padding: 6px 0 !important;
	line-height: 1.4 !important;
	resize: none !important;
	overflow: hidden !important;
	overflow-y: hidden !important;
	white-space: pre-wrap;
	word-break: break-word;
	box-sizing: border-box !important;
	display: block !important;
	text-align: left !important;
	field-sizing: content;
	vertical-align: middle;
}
#profile .n2e-settings-textarea::-webkit-resizer,
#profile textarea.form-control-user-profile::-webkit-resizer {
	display: none !important;
}
@media (max-width: 640px) {
	#profile .n2e-settings-row,
	#AdminAddUser .n2e-settings-row,
	.modalElementEditUser .n2e-settings-row {
		grid-template-columns: 1fr;
		gap: 4px 0;
		padding: 10px 4px 12px;
	}
	#profile .n2e-settings-identity {
		flex-direction: column;
		align-items: center;
	}
	#profile .n2e-settings-identity-fio {
		width: 100%;
	}
}

/* Админ: добавление пользователя — рамки валидации (тема форсит цвет input) */
#AdminAddUser input[data-n2e-valid="1"],
.modalElementEditUser input[data-n2e-valid="1"],
#email[data-n2e-valid="1"] {
	border-bottom-color: #3d9a5f !important;
}
#AdminAddUser input[data-n2e-valid="0"],
.modalElementEditUser input[data-n2e-valid="0"],
#email[data-n2e-valid="0"] {
	border-bottom-color: #c45b5b !important;
}

#profile input,
#profile textarea,
.admin_panel input.form-control,
.admin_panel textarea.form-control,
.modalElementEditUser input,
.modalElementEditUser textarea,
.modalElement input,
.eventForm {
	font-size: 0.84rem !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	color: var(--m02-text) !important;
	caret-color: var(--m02-cyan);
}
#profile .confidencial_additional,
#profile .messages_access_opt,
#profile .hidden_chats_btn_opt,
#profile .radioGenderPointer,
#AdminAddUser .n2e-settings-tabs .change_user_panel,
.modalElementEditUser .n2e-settings-tabs .change_user_panel,
#AdminAddUser .password-control_admin,
.modalElementEditUser .password-control_admin {
	font-size: 0.88rem !important;
}
#AdminAddUser .n2e-profile-k,
.modalElementEditUser .n2e-profile-k {
	font-size: var(--n2e-label-size) !important;
	font-weight: var(--n2e-label-weight) !important;
	letter-spacing: var(--n2e-label-tracking) !important;
	color: var(--n2e-label-color) !important;
	text-transform: uppercase;
}
/* Настройки профиля: подписи 0.8rem, значения — как основной текст (0.91rem) */
#profile .n2e-profile-k {
	font-size: 0.8rem !important;
	font-weight: var(--n2e-label-weight) !important;
	letter-spacing: var(--n2e-label-tracking) !important;
	color: var(--n2e-label-color) !important;
	text-transform: uppercase;
}
#profile .n2e-settings-identity-fio input.form-control,
#profile .n2e-settings-identity-fio input.form-control-user-profile,
#profile .n2e-settings-row .n2e-settings-v input.form-control,
#profile .n2e-settings-row .n2e-settings-v input.form-control-user-profile,
#profile .n2e-settings-row .n2e-settings-v input[type="tel"],
#profile .n2e-settings-row .n2e-settings-v input[type="email"],
#profile .n2e-settings-row .n2e-settings-v input[type="date"],
#profile .n2e-settings-row .n2e-settings-v textarea.form-control-user-profile,
#profile .n2e-settings-v #fakeMarital,
#profile .n2e-settings-v .forMarital,
#profile .n2e-settings-textarea {
	font-size: 0.91rem !important;
}

/* —— Попапы / confirm-модалки (подвал + удаление) —— */
.popupContacts,
.popupDeleteAccount,
.popupDeleteFriend,
.HighLevelModal,
.element_to_pop_up,
.modalElementEditUser {
	background: var(--m02-panel) !important;
	border: 1px solid var(--m02-line) !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	color: var(--m02-text) !important;
}
.popupContacts h4,
.popupDeleteAccount h4,
.popupDeleteFriend h4,
.HighLevelModal h4 {
	color: var(--m02-text) !important;
	font-size: 1rem !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	margin: 0 0 18px !important;
}
.popupContacts p,
.popupDeleteAccount p,
.popupDeleteFriend p,
.HighLevelModal p {
	color: var(--m02-text) !important;
	font-size: 0.84rem !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	margin: 0 0 28px !important;
}
.popupBackground {
	background-color: rgba(0, 0, 0, 0.72) !important;
	/* Над листами события/дня (91); ниже HighLevel (99) */
	z-index: 95 !important;
}
.popupContacts,
.popupDeleteAccount,
.popupDeleteFriend {
	z-index: 96 !important;
	padding: 24px 28px 22px !important;
}

/* Удаление аккаунта — компактный confirm, без «высокого» окна */
.popupDeleteAccount,
#deleteprofile.popupDeleteAccount {
	min-width: 300px !important;
	width: auto !important;
	max-width: 400px !important;
	height: auto !important;
	padding: 22px 28px 20px !important;
	box-sizing: border-box !important;
	text-align: center !important;
}
.popupDeleteAccount h4,
#deleteprofile.popupDeleteAccount h4 {
	margin: 0 0 10px !important;
	padding: 0 1.5em 0 0 !important;
	font-size: 1rem !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	text-align: center !important;
}
.popupDeleteAccount p,
#deleteprofile.popupDeleteAccount p {
	margin: 0 0 16px !important;
	font-size: 0.88rem !important;
	line-height: 1.5 !important;
	color: var(--m02-muted) !important;
	text-align: center !important;
}
.popupDeleteAccount .n2e-popup-actions,
#deleteprofile .n2e-popup-actions {
	margin: 0 !important;
	justify-content: center !important;
}

/* Модалка «Удаление из друзей» — чуть просторнее, с отступами */
.popupDeleteFriend,
#deleteFriend.popupDeleteFriend {
	min-width: 300px !important;
	width: auto !important;
	max-width: 400px !important;
	padding: 26px 28px 22px !important;
	box-sizing: border-box !important;
}
.popupDeleteFriend h4,
#deleteFriend.popupDeleteFriend h4 {
	margin: 0 0 12px !important;
	padding: 0 1.5em 0 0 !important;
	font-size: 1rem !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
}
.popupDeleteFriend p,
#deleteFriend.popupDeleteFriend p {
	margin: 0 0 20px !important;
	font-size: 0.88rem !important;
	line-height: 1.5 !important;
	color: var(--m02-muted) !important;
}
.popupDeleteFriend .n2e-popup-actions,
#deleteFriend .n2e-popup-actions {
	display: flex !important;
	gap: 8px 10px !important;
	margin: 0 !important;
	justify-content: center !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	width: 100% !important;
}
.popupDeleteFriend .n2e-popup-actions .blbutton,
#deleteFriend .n2e-popup-actions .blbutton,
.popupDeleteFriend .blbutton,
#deleteFriend.popupDeleteFriend .blbutton {
	flex: 0 0 auto !important;
	margin: 0 !important;
	min-width: 0 !important;
}

/* —— Footer —— */
.footer {
	height: 34px !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 10%;
	border-top: 1px solid var(--m02-line) !important;
	border-bottom: 1px solid var(--m02-line) !important;
	background: var(--m02-panel) !important;
	overflow: visible;
	/* В потоке flex-колонки wrapper — всегда у низа окна, на всю ширину */
	position: relative !important;
	bottom: auto !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	flex: 0 0 auto !important;
	box-sizing: border-box !important;
	z-index: 40 !important;
}
.afooter {
	height: auto !important;
	min-height: 0 !important;
	min-width: 0 !important;
	width: auto !important;
	margin: 0 !important;
	padding: 4px 14px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px;
	background: transparent !important;
	border: 1px solid transparent;
	color: var(--m02-muted) !important;
	font-size: calc(0.78rem + 1px) !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	box-sizing: border-box;
	vertical-align: middle;
	white-space: nowrap;
}
/* Запас снизу у формы входа — absolute footer не перекрывает кнопки */
.wrapper.n2e-auth-page #formregauth {
	padding-bottom: 48px;
	box-sizing: border-box;
}
html.n2e-narrow .wrapper.n2e-auth-page #formregauth {
	padding-bottom: calc(var(--n2e-footer-reserve, 52px) + 12px);
}
.afooter .n2e-nav-ico {
	flex: 0 0 15px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 15px;
	height: 15px;
	line-height: 0;
	color: inherit;
	opacity: 0.9;
}
.afooter .n2e-nav-ico svg {
	display: block;
	width: 15px;
	height: 15px;
}
.afooter .n2e-nav-label {
	display: inline-flex;
	align-items: center;
	line-height: 1;
	font-weight: 700 !important;
}
.afooter:hover {
	color: var(--m02-cyan) !important;
	border-color: var(--m02-line);
}

/* Контраст крестика закрытия модалки */
.modalCloseEditUser:before,
.modalCloseEditUser:after {
	background-color: var(--m02-muted) !important;
}

/* Старое cyan-свечение панелей контента затекало в левые/правые поля — не нужно */
.wrapper .contentForm,
.wrapper .calendar,
.wrapper .profileUserCSS,
.wrapper .admin_panel,
.wrapper .redirectUser,
.wrapper .col,
.wrapper .n2e-group-page,
.wrapper .n2e-group-create,
.wrapper .n2e-group-composer,
.wrapper .n2e-group-post,
.wrapper .moreFriendElement,
.wrapper .moreUsersElement {
	-webkit-box-shadow: none !important;
	-moz-box-shadow: none !important;
	box-shadow: none !important;
	filter: none !important;
}
.n2e-group-manage-toggle {
	background: transparent !important;
	color: var(--m02-cyan) !important;
	border: none !important;
	box-shadow: none !important;
}
.n2e-group-manage {
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
}
.n2e-group-manage-body {
	background: rgba(127, 220, 232, 0.03) !important;
	color: var(--m02-text);
	padding: 8px 10px !important;
}
.n2e-group-manage-arrow {
	border-top-color: var(--m02-cyan) !important;
	border-right-color: var(--m02-cyan) !important;
}
.n2e-group-flag {
	background: transparent !important;
	border: none !important;
	border-bottom: 1px solid var(--m02-line) !important;
	border-radius: 0 !important;
	color: var(--m02-text) !important;
	padding: 8px 0 !important;
}
.n2e-group-flag:hover {
	background: transparent !important;
	border-bottom-color: rgba(127, 220, 232, 0.45) !important;
}
.n2e-group-toggle-ui {
	background: transparent !important;
	border-color: var(--m02-line) !important;
	border-radius: 0 !important;
}
.n2e-group-toggle-knob {
	background: var(--m02-muted) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}
.n2e-group-toggle-input:checked + .n2e-group-toggle-ui {
	background: rgba(127, 220, 232, 0.12) !important;
	border-color: var(--m02-cyan) !important;
}
.n2e-group-toggle-input:checked + .n2e-group-toggle-ui .n2e-group-toggle-knob {
	background: var(--m02-cyan) !important;
}
.n2e-group-toggle-text {
	color: var(--m02-text) !important;
}
.n2e-group-hero-avatar {
	width: 104px !important;
	align-self: stretch !important;
}
.n2e-group-hero-avatar > .n2e-group-avatar-lg,
.n2e-group-hero-avatar > .n2e-group-avatar-empty {
	width: 104px !important;
	min-height: 104px !important;
	height: 100% !important;
	border-radius: 0 !important;
}
.n2e-group-hero-avatar-change {
	color: var(--m02-text) !important;
	border-top-color: var(--m02-line) !important;
	background: rgba(0, 0, 0, 0.7) !important;
}
.n2e-group-hero-avatar-remove {
	background: rgba(0, 0, 0, 0.7) !important;
	border-top-color: var(--m02-line) !important;
	border-left-color: var(--m02-line) !important;
}
.n2e-group-textarea,
textarea.n2e-group-textarea {
	resize: none !important;
	min-height: 56px !important;
	height: 56px !important;
	background: var(--m02-bg) !important;
	color: var(--m02-text) !important;
	border: none !important;
	border-bottom: 1px solid var(--m02-line) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

/* Скроллбары страницы и панелей */
html {
	scrollbar-width: auto;
	scrollbar-color: var(--m02-cyan) var(--m02-bg);
}
/* У html только вертикаль не нужна (overflow:hidden); height:0 — без гориз. трека */
html::-webkit-scrollbar {
	width: 0;
	height: 0;
}
/*
 * Скролл страницы у .middle — фирменный через .n2e-scroll.
 * У body нет вертикального скролла (overflow:hidden) → нет gutter справа у chrome.
 */
body {
	scrollbar-width: auto;
	scrollbar-color: var(--m02-cyan) var(--m02-bg);
}

/* Общий фирменный скролл для панелей / списков модалок — класс .n2e-scroll */
.n2e-scroll {
	scrollbar-width: thin;
	scrollbar-color: var(--m02-cyan) var(--m02-panel);
}
.n2e-scroll::-webkit-scrollbar {
	width: 8px;
	height: 8px;
}
.n2e-scroll::-webkit-scrollbar-track {
	background: var(--m02-panel);
}
.n2e-scroll::-webkit-scrollbar-thumb {
	background: var(--m02-line);
	border: 2px solid var(--m02-panel);
	border-radius: 0;
}
.n2e-scroll::-webkit-scrollbar-thumb:hover {
	background: var(--m02-cyan);
}

/* Управление → Настройка сайта: счётчик по центру, хинт справа */
.admin_panel .n2e-admin-site-settings .n2e-settings-row:not(.n2e-settings-row--stack) {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	width: 100% !important;
}
.admin_panel .n2e-admin-site-settings .n2e-settings-row:not(.n2e-settings-row--stack) .n2e-settings-v {
	display: grid !important;
	grid-template-columns: 1fr auto 1fr !important;
	align-items: center !important;
	column-gap: 10px !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	float: none !important;
}
.admin_panel .n2e-admin-site-settings .n2e-settings-row:not(.n2e-settings-row--stack) .n2e-settings-v > input[type="number"] {
	grid-column: 2 !important;
	width: 88px !important;
	max-width: 88px !important;
	min-width: 0 !important;
	flex: none !important;
	float: none !important;
	margin: 0 !important;
	text-align: center !important;
	justify-self: center !important;
}
.admin_panel .n2e-admin-site-settings .n2e-settings-row:not(.n2e-settings-row--stack) .n2e-settings-v > .n2e-admin-field-hint {
	grid-column: 3 !important;
	justify-self: start !important;
	text-align: left !important;
	white-space: nowrap;
	color: var(--m02-muted) !important;
}
.admin_panel .n2e-admin-site-settings .n2e-settings-row--stack .n2e-settings-v {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	width: 100% !important;
	max-width: 560px !important;
	margin: 0 auto !important;
}
.admin_panel .n2e-admin-site-settings .n2e-zitar-plan-div-checks {
	width: 100% !important;
	max-width: 480px !important;
	margin: 0 auto !important;
}

/* Управление → Выгрузка переписок (компактная колонка по центру) */
.admin_panel #n2eAdminPaneExport .n2e-admin-export-form,
.admin_panel #n2eAdminPaneExport .n2e-admin-export-list,
.admin_panel #n2eAdminPaneExport .n2e-admin-export-actions {
	max-width: 420px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}
.admin_panel #n2eAdminPaneExport .n2e-admin-export-form .n2e-settings-row {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 4px !important;
	margin: 0 0 12px !important;
	width: 100% !important;
	float: none !important;
}
.admin_panel #n2eAdminPaneExport .n2e-admin-export-form .n2e-settings-v {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	float: none !important;
}
.admin_panel #n2eAdminPaneExport .n2e-export-period {
	display: flex !important;
	flex-direction: row !important;
	align-items: flex-end !important;
	justify-content: center !important;
	gap: 12px !important;
}
.admin_panel #n2eAdminPaneExport .n2e-admin-export-form textarea {
	resize: none !important;
	overflow-y: auto !important;
	text-align: center !important;
}
.admin_panel #n2eAdminPaneExport .n2e-admin-export-form input,
.admin_panel #n2eAdminPaneExport .n2e-admin-export-form select,
.admin_panel #n2eAdminPaneExport .n2e-export-find > input {
	text-align: center !important;
}
.admin_panel #n2eAdminPaneExport .n2e-admin-export-form select {
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	appearance: none !important;
	text-align: center !important;
	text-align-last: center !important;
	padding-left: 1.6em !important;
	padding-right: 1.6em !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1.1 1.2 6 6.1l4.9-4.9' stroke='%237fdce8' stroke-width='1.4' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 0.15em center !important;
	background-size: 12px 8px !important;
}
.admin_panel #n2eAdminPaneExport .n2e-admin-export-form textarea::-webkit-resizer {
	display: none !important;
}
.admin_panel #n2eAdminPaneExport .n2e-admin-export-form .n2e-settings-v > .n2e-admin-field-hint {
	display: block;
	margin-top: 4px;
	text-align: center;
	white-space: normal;
	line-height: 1.35;
}
.admin_panel #n2eAdminPaneExport .n2e-export-find-item {
	border-color: var(--m02-line) !important;
	color: var(--m02-text);
}
.admin_panel #n2eAdminPaneExport .n2e-export-find-item:hover,
.admin_panel #n2eAdminPaneExport .n2e-export-find-item.is-active {
	border-color: var(--m02-cyan) !important;
	color: var(--m02-cyan) !important;
	background: var(--m02-hover, transparent);
}
.admin_panel #n2eAdminPaneExport .n2e-export-request {
	border-bottom-color: var(--m02-line) !important;
}
.admin_panel #n2eAdminPaneExport .n2e-export-request-title {
	color: var(--m02-text);
}
.admin_panel #n2eAdminPaneExport .n2e-admin-export-list .n2e-admin-field-hint {
	text-align: center;
}

.division_accessDiv::-webkit-scrollbar,
.division_accessDiv_reg::-webkit-scrollbar,
.structure_accessDiv::-webkit-scrollbar,
.structure_accessDiv_reg::-webkit-scrollbar,
.groups_visDiv::-webkit-scrollbar,
.maritalDiv::-webkit-scrollbar,
.modalElementEditUser::-webkit-scrollbar,
.n2e-notif-list::-webkit-scrollbar,
.n2e-group-members-body::-webkit-scrollbar {
	width: 8px;
}
.division_accessDiv::-webkit-scrollbar-thumb,
.division_accessDiv_reg::-webkit-scrollbar-thumb,
.structure_accessDiv::-webkit-scrollbar-thumb,
.structure_accessDiv_reg::-webkit-scrollbar-thumb,
.groups_visDiv::-webkit-scrollbar-thumb,
.maritalDiv::-webkit-scrollbar-thumb,
.modalElementEditUser::-webkit-scrollbar-thumb,
.n2e-notif-list::-webkit-scrollbar-thumb,
.n2e-group-members-body::-webkit-scrollbar-thumb {
	background: var(--m02-line);
	border-radius: 0;
}
.division_accessDiv,
.division_accessDiv_reg,
.structure_accessDiv,
.structure_accessDiv_reg,
.groups_visDiv,
.maritalDiv,
.modalElementEditUser,
.n2e-notif-list,
.n2e-group-members-body {
	scrollbar-width: thin;
	scrollbar-color: var(--m02-cyan) var(--m02-panel);
}

/* —— Подписчики / инвайты события —— */
.n2e-event-form-avatar-col {
	display: flex;
	flex-direction: column;
	align-items: center;
	flex: 0 0 auto;
	gap: 8px;
}
.n2e-event-form-invite-row {
	width: 112px;
	max-width: 112px;
	min-width: 112px;
	box-sizing: border-box;
	text-align: center;
}
.n2e-event-form-invite-row .blbutton,
.n2e-event-form-subs-link {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: block !important;
	width: 112px !important;
	min-width: 112px !important;
	max-width: 112px !important;
	margin: 0 !important;
	padding: 3px 0 4px !important;
	box-sizing: border-box;
	border: none !important;
	border-radius: 0 !important;
	border-bottom: 1px dashed rgba(127, 220, 232, 0.55) !important;
	background: transparent !important;
	box-shadow: none !important;
	font-family: inherit !important;
	font-size: 0.84rem !important;
	font-weight: 500 !important;
	line-height: 1.3 !important;
	letter-spacing: 0 !important;
	color: var(--m02-muted) !important;
	text-align: center !important;
	cursor: pointer;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.n2e-event-form-subs-link:hover,
.n2e-event-form-invite-row .n2e-event-form-subs-link:hover {
	color: var(--m02-cyan) !important;
	border-bottom-color: var(--m02-cyan) !important;
}
.n2e-event-form-subs-line {
	display: inline !important;
	white-space: nowrap;
}
.n2e-event-form-subs-num,
.n2e-event-form-subs-word {
	display: inline !important;
	width: auto !important;
	max-width: none !important;
	float: none !important;
	text-align: inherit !important;
	line-height: inherit;
}
.n2e-event-form-subs-num {
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum" 1;
}
.n2e-event-form-subs-num::after {
	content: "\00a0";
}
.n2e-event-form-invite-link {
	white-space: normal !important;
}
.dayEventCardTop {
	display: flex !important;
	align-items: flex-start !important;
	justify-content: space-between !important;
	gap: 10px !important;
	margin: 0 0 4px !important;
}
.dayEventCardTopLeft {
	min-width: 0 !important;
	flex: 1 1 auto !important;
}
.dayEventCardTopRight {
	flex: 0 0 auto !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-end !important;
	justify-content: flex-start !important;
	gap: 3px !important;
	max-width: min(42%, 11em) !important;
	text-align: right !important;
}
.dayEventCardSubsCount {
	font-size: 0.88rem;
	color: var(--m02-muted);
	line-height: 1.3;
	white-space: nowrap;
}
.dayEventCardTopRight .n2e-ev-sub-actions {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
	width: auto;
	max-width: 100%;
	margin: 0;
}
.dayEventCardTopRight .n2e-ev-sub-actions .blbutton {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: inline-block !important;
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	font-family: var(--m02-font-ui) !important;
	font-size: 0.88rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.01em !important;
	line-height: 1.3 !important;
	color: var(--m02-muted) !important;
	text-align: right !important;
	cursor: pointer;
}
.dayEventCardTopRight .n2e-ev-sub-actions .blbutton:hover {
	color: var(--m02-cyan) !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
}
.n2e-ev-sub-actions {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 8px;
	width: 100%;
	max-width: 320px;
	margin: 0 auto;
}
.n2e-ev-sub-actions .blbutton {
	width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box;
}
.n2e-ev-sub-actions--row {
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-end;
	margin: 0;
	max-width: none;
	width: auto;
}
.n2e-ev-sub-actions--row .blbutton {
	width: auto !important;
}
.n2e-event-sheet-sub-wrap {
	display: flex;
	justify-content: center;
	width: 100%;
	box-sizing: border-box;
	margin: 12px 0 0;
}
.n2e-event-sheet-sub-wrap .n2e-ev-sub-actions {
	width: 100%;
	max-width: 320px;
}
.n2e-event-sheet-sub-wrap .n2e-ev-sub-actions .blbutton {
	font-size: 0.92rem !important;
}
.n2e-ev-subs-count {
	appearance: none;
	border: none;
	background: transparent;
	padding: 0;
	margin: 0;
	font: inherit;
	color: inherit;
	cursor: default;
}
.n2e-ev-subs-count--link {
	color: var(--m02-cyan) !important;
	cursor: pointer;
	text-decoration: none;
	border-bottom: 1px solid transparent;
}
.n2e-ev-subs-count--link:hover {
	border-bottom-color: var(--m02-cyan);
}
.n2e-event-subs-under {
	display: block;
	margin-top: 6px;
	padding-top: 6px;
	border-top: 1px solid var(--m02-line);
}
.n2e-event-subs-under .n2e-ev-subs-count {
	font-size: 0.95rem;
	line-height: 1.35;
}
.n2e-ev-people-lock {
	overflow: hidden !important;
}
html.n2e-ev-people-lock,
html.n2e-ev-people-lock body {
	/* gutter + padding: логотип (left:50%) не прыгает, когда пропадает скроллбар */
	scrollbar-gutter: stable;
}
html.n2e-ev-people-lock body {
	padding-right: var(--n2e-ev-sb-pad, 0px) !important;
}
html.n2e-ev-people-lock .header,
html.n2e-ev-people-lock .footer {
	padding-right: var(--n2e-ev-sb-pad, 0px);
	box-sizing: border-box;
}
.n2e-ev-people-bg {
	position: fixed;
	inset: 0;
	z-index: 12040;
	background: rgba(8, 18, 28, 0.45);
}
.n2e-ev-invite-bg {
	position: fixed;
	inset: 0;
	z-index: 12060;
	background: rgba(8, 18, 28, 0.55);
}
.n2e-ev-people-panel {
	position: fixed;
	z-index: 12050;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: min(420px, calc(100vw - 24px));
	max-height: min(78vh, 640px);
	display: flex;
	flex-direction: column;
	background: var(--m02-panel);
	border: 1px solid var(--m02-line);
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
	box-sizing: border-box;
}
.n2e-ev-invite-panel {
	position: fixed;
	z-index: 12070;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: min(420px, calc(100vw - 24px));
	max-height: min(78vh, 640px);
	display: flex;
	flex-direction: column;
	background: var(--m02-panel);
	border: 1px solid var(--m02-line);
	border-radius: 12px;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
	padding-bottom: 10px;
	overflow: hidden;
	box-sizing: border-box;
}
.n2e-ev-people-head {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 12px;
	border-bottom: 1px solid var(--m02-line);
	flex: 0 0 auto;
}
.n2e-ev-people-title {
	flex: 1 1 auto;
	font-size: 0.95rem;
	font-weight: 600;
	color: var(--m02-text);
}
.n2e-ev-people-invite {
	width: auto !important;
	margin: 0 !important;
	padding: 4px 10px !important;
	font-size: 0.75rem !important;
}
.n2e-ev-people-close {
	flex: 0 0 auto;
	width: 22px !important;
	min-width: 22px !important;
	height: 22px !important;
}
.n2e-ev-people-close.n2e-group-panel-close::before,
.n2e-ev-people-close.n2e-group-panel-close::after {
	width: 10px;
	height: 1.25px;
}
.n2e-ev-people-body {
	flex: 1 1 auto;
	overflow: auto;
	padding: 8px 12px 14px;
	min-height: 0;
}
.n2e-ev-people-section-title {
	font-size: 0.68rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--m02-cyan);
	margin: 4px 0 8px;
}
.n2e-ev-people-list .n2e-ev-people-avatar {
	width: 36px !important;
	height: 36px !important;
}
.n2e-ev-people-empty {
	padding: 18px 8px;
	text-align: center;
	color: var(--m02-muted);
	font-size: 0.88rem;
}
.n2e-ev-invite-body {
	display: flex;
	flex-direction: column;
	min-height: 0;
	flex: 1 1 auto;
	padding: 8px 12px 4px;
	box-sizing: border-box;
	overflow: hidden;
}
.n2e-ev-invite-panel .n2e-event-friends-actions,
.n2e-ev-invite-panel .n2e-event-friends-search {
	margin-left: 0;
	margin-right: 0;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}
.n2e-ev-invite-panel .n2e-event-friends-list,
.n2e-ev-invite-panel .n2e-ev-invite-results {
	margin: 0;
	max-height: 36vh;
	overflow: auto;
	width: 100%;
	box-sizing: border-box;
}
.n2e-ev-invite-pending {
	margin: 0 0 8px;
	max-height: 28vh;
	overflow: auto;
}
.n2e-ev-invite-section-title {
	font-size: 0.68rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--m02-cyan);
	margin: 4px 0 8px;
}
.n2e-ev-invite-hint {
	padding: 14px 4px;
	text-align: center;
	color: var(--m02-muted);
	font-size: 0.84rem;
}
.n2e-ev-invite-row .n2e-ev-people-avatar {
	width: 32px !important;
	height: 32px !important;
}
.n2e-ev-invite-foot {
	padding: 10px 12px 0;
	flex: 0 0 auto;
}
.n2e-ev-invite-foot .blbutton {
	width: 100% !important;
	margin: 0 !important;
}
.n2e-event-invite-avatar {
	width: 80px !important;
	height: 80px !important;
	object-fit: contain;
}
.n2e-event-invite-avatar-link {
	display: block;
	flex: 0 0 auto;
	line-height: 0;
	text-decoration: none;
}
.n2e-event-invite-card .n2e-invite-main {
	cursor: pointer;
}

/* —— Мобильная вёрстка (≤720px): каркас + auth —— */
@media (max-width: 720px), (max-device-width: 720px) {
	html.n2e-mobile-nav-lock,
	html.n2e-mobile-nav-lock body {
		overflow: hidden;
	}

	.wrapper {
		min-width: 0 !important;
	}

	.middle,
	.container {
		min-width: 0 !important;
		width: 100% !important;
		float: none !important;
	}

	.content {
		padding: 0 8px !important;
	}

	.right-sidebar {
		display: none !important;
	}

	/* Кнопка «гамбургер» — только на узком экране */
	.n2e-mobile-nav-btn {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
		width: 34px;
		height: 28px;
		margin: 0;
		padding: 0;
		pointer-events: auto;
		appearance: none;
		-webkit-appearance: none;
		border: 1px solid var(--m02-line);
		border-radius: 8px;
		background: transparent;
		color: var(--m02-muted);
		cursor: pointer;
		box-sizing: border-box;
	}
	.n2e-mobile-nav-btn:hover,
	.n2e-mobile-nav-btn:focus {
		color: var(--m02-cyan);
		border-color: var(--m02-cyan);
		outline: none;
	}
	.n2e-mobile-nav-btn-bars,
	.n2e-mobile-nav-btn-bars::before,
	.n2e-mobile-nav-btn-bars::after {
		display: block;
		width: 16px;
		height: 2px;
		border-radius: 1px;
		background: currentColor;
	}
	.n2e-mobile-nav-btn-bars {
		position: relative;
	}
	.n2e-mobile-nav-btn-bars::before,
	.n2e-mobile-nav-btn-bars::after {
		content: '';
		position: absolute;
		left: 0;
	}
	.n2e-mobile-nav-btn-bars::before {
		top: -5px;
	}
	.n2e-mobile-nav-btn-bars::after {
		top: 5px;
	}

	.n2e-mobile-nav-backdrop {
		position: fixed;
		inset: 0;
		z-index: 12100;
		background: var(--m02-overlay);
	}

	/* Плашка меню — детали в site-mobile.css (всплывающая панель по центру) */
	.n2e-zitar-nav,
	.n2e-zitar-nav > .userbutton,
	.n2e-zitar-sub .userbutton {
		width: 100% !important;
		max-width: none !important;
	}

	.header {
		min-height: 40px;
	}
	.n2e-header-left {
		left: 8px;
		gap: 8px;
		max-width: calc(50% - 48px);
	}
	.logo {
		max-width: 42vw;
	}
	.emptyBirthday {
		left: 8px !important;
		right: 8px !important;
		width: auto !important;
		max-width: 100% !important;
		font-size: 0.68rem !important;
		text-align: center;
		white-space: normal !important;
		box-sizing: border-box !important;
	}

	.footer {
		height: auto !important;
		min-height: 34px;
		padding: 4px 8px !important;
		gap: 6px !important;
		flex-wrap: wrap;
	}

	/* Auth / рег / восстановление */
	#formregauth {
		width: 100%;
		box-sizing: border-box;
		display: flex;
		justify-content: center;
	}
	.n2e-auth-row {
		padding: 1rem 12px 1.5rem !important;
		width: 100% !important;
		max-width: 420px;
		box-sizing: border-box;
		align-items: stretch !important;
	}
	.n2e-auth-row > .col.n2e-auth-card {
		width: 100% !important;
		min-width: 0 !important;
		max-width: none !important;
	}
	#formauth.n2e-auth-card,
	#formreg.n2e-auth-card,
	#recoverpass.n2e-auth-card,
	#changepassrecover.n2e-auth-card {
		width: 100% !important;
		max-width: none !important;
		padding: 20px 16px 18px !important;
	}
	#changepassrecover.n2e-auth-card--wide {
		max-width: none !important;
	}
	.n2e-auth-secondary {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 8px !important;
	}
	.n2e-auth-link {
		width: 100%;
		text-align: center;
	}
	.n2e-auth-pswd-info {
		font-size: 0.78rem !important;
	}

	/* Панели контента — на всю ширину, без боковых «полей» */
	.wrapper .contentForm,
	.wrapper .calendar,
	.wrapper .profileUserCSS,
	.wrapper .admin_panel,
	.wrapper .redirectUser,
	.wrapper .col,
	.wrapper .friends,
	.wrapper .eventsView,
	.wrapper .messagesView,
	.wrapper .n2e-group-page,
	.wrapper .n2e-group-create {
		border-radius: 10px !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		max-width: 100% !important;
		box-sizing: border-box;
	}

	.redirectUser .n2e-profile-layout {
		width: 100% !important;
	}

	.n2e-list-card,
	.friendsElement.n2e-list-card,
	.n2e-group-card {
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}

/* Скрытие гамбургера — через html:not(.n2e-narrow) в site-mobile.css.
   Нельзя опираться на min-device-width: при зуме layout ≤1400, а device всё ещё «широкий». */
@media (min-width: 721px) and (min-device-width: 721px) {
	html:not(.n2e-narrow) .n2e-mobile-nav-backdrop {
		display: none !important;
	}
}

/* Сессия мертва: оболочка не кликается (модалка/фон — вне .wrapper) */
html.n2e-session-dead .wrapper,
body.n2e-session-dead .wrapper {
	pointer-events: none !important;
	user-select: none !important;
}
html.n2e-session-dead #n2eLimitNotice,
html.n2e-session-dead #n2eLimitNoticeBg,
body.n2e-session-dead #n2eLimitNotice,
body.n2e-session-dead #n2eLimitNoticeBg {
	pointer-events: auto !important;
}

/* CSP: утилиты вместо style="" */
.n2e-is-hidden {
	display: none;
}
.n2e-admin-panel-center {
	justify-content: center;
}
.n2e-zero-box {
	width: 0;
	height: 0;
}
#fakeMarital.forMarital {
	display: block;
}
.n2e-h4-mb-30 {
	margin-bottom: 30px;
}
.n2e-hl-modal-text {
	padding: 5px 20px;
}
.n2e-hl-modal-text-restore {
	padding: 5px 20px 20px 20px;
}
.n2e-hl-pad {
	padding: 5px 10px 15px 10px;
}
.n2e-hl-btn {
	width: auto;
	margin-top: 25px;
}
.n2e-text-muted-grey {
	color: grey;
}

/* Фон confirm сразу видим (удаление, пикеры) */
.n2e-confirm-bg-on {
	display: block;
	opacity: 0.78;
}

/* Модалка confirm: авто-размер, max 400px */
.n2e-popup-fit {
	display: block;
	width: auto;
	height: auto;
	max-width: 400px;
}

/* Модалка confirm: авто-размер, max 420px */
.n2e-popup-fit-420 {
	display: block;
	width: auto;
	height: auto;
	max-width: 420px;
}

/* Модалка confirm: display block + height auto (размер из темы) */
.n2e-popup-visible-auto-h {
	display: block;
	height: auto;
}
