/* === FONT FACES === */
@font-face {
	font-family: "Lato";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url(https://lk.fa.ru/_next/static/media/cce080f35d014443-s.woff2) format("woff2");
}

@font-face {
	font-family: "Lato";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url(https://lk.fa.ru/_next/static/media/39969fcf98a3026e-s.woff2) format("woff2");
}

@font-face {
	font-family: "Golos Text";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url(https://lk.fa.ru/_next/static/media/b07dd69d3f271780-s.woff2) format("woff2");
}

@font-face {
	font-family: "Golos Text";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url(https://lk.fa.ru/_next/static/media/b07dd69d3f271780-s.woff2) format("woff2");
}


/* === ROOT VARIABLES === */
:root {
	--background: #ffffff;
	--foreground: #171717;
	--primary: #093B80;
	--complexShadow:
		0px 24px 48px 0px rgba(230,235,245,0.4),
		0px 1px 4px 0px rgba(227,235,252,1);
}

/* === BASE STYLES === */
/* === HEADER STYLES === */

div.elkMenu .header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	margin: 0 auto;
	padding: 16px 0;
	position: relative;
	z-index: 9000;
	background-color: #fff;
}

div.elkMenu .services-menu {
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 1216px;
	width: 100%;
	margin: 0 auto;
	padding: 16px 0;
	position: relative;
	z-index: 9000;
	background-color: #fff;
}

div.elkMenu .logo {
	display: flex;
	align-items: center;
	height: 32px;
	cursor: pointer;
}

div.elkMenu .logo img {
	height: 36px;
}

div.elkMenu .user-info {
	display: flex;
	align-items: center;
	gap: 4px;
}

div.elkMenu .user-name {
	height: 25px;
	line-height: 25px;
	font-weight: 500;
	color: rgb(18, 19, 20);
	white-space: nowrap;
	padding-left: 10px;
	padding-right: 14px;
	border-right: 1px solid rgb(18, 19, 20);
}

div.elkMenu .user-role {
	font-weight: 500;
	color: var(--primary);
}

/* === MENU STYLES === */
div.elkMenu .menuNav {
	background-color: var(--primary);
	position: absolute;
	top: 70px;
	left: 0px;
	min-height: 100vh;
	z-index: 9000;
	width: 280px;
}

body.pagelayout-admin div.elkMenu .menuNav{
	top: 0px;
}

div.elkMenu .menuList {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-direction: column;
	list-style: none;
	padding: 24px 0;
	margin: 0;
}

div.elkMenu .menuItem {
	height: 46px;
	width: 100%;
	position: static;
}

div.elkMenu .menuButton {
	background: none;
	border: none;
	height: 40px;
	width: 100%;
	text-align: left;
	padding: 0 16px 0 36px;
	transition: background-color 0.2s ease;
	color: #FFF;
	font-size: 14px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	cursor: pointer;
	box-sizing: border-box;
}

div.elkMenu .menuButton:hover .menuIcon:not(.activeMenuIcon) {
	opacity: 1;
}

div.elkMenu .activeTopMenuItem > .menuButton {
	background-color: #FFF;
	color: var(--primary);
}

div.elkMenu .activeTopMenuItem .menuIcon {
	background: var(--primary);
	opacity: 1;
}

div.elkMenu .menuIcon {
	min-width: 24px;
	min-height: 24px;
	display: inline-block;    
	background-color: #fff;
	-webkit-mask-size: cover;
	mask-size: cover;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	vertical-align: middle;
	transition: background-color 0.2s ease;
	opacity: 0.6;
}

div.elkMenu .activeMenuIcon {
	background: var(--primary) !important;
	opacity: 1 !important;
}

div.elkMenu .menuButtonContent {
	display: flex;
	align-items: center;
	width: 100%;
}

div.elkMenu .menuLabel {
	margin-left: 12px;
	flex-shrink: 1;
}

/* === SUBMENU STYLES === */
div.elkMenu .subMenuWrapper {
	position: static;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 280px;
	height: 100vh;
	background: #fff;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	box-shadow: none;
	padding: 0;
	z-index: 8900;
	position: absolute;
}

div.elkMenu .subMenuContent {
	position: relative;
	width: 100%;
}

div.elkMenu .subMenuList {
	width: 100%;
	height: 100%;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	list-style: none;
	margin: 0;
	background: #fff;
	gap: 16px;
	color: var(--primary);
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	border-radius: 0;
	box-shadow: none;
	padding: 32px 0 0 0;
}

div.elkMenu .subMenuItem {
	padding: 0 16px;
	cursor: pointer;
	display: flex;
	align-items: center;
}

div.elkMenu .subMenuItem a {
	color: var(--primary);
	text-decoration: none;
	line-height: 1.4;
}

div.elkMenu .subMenuItem:hover {
	color: #0B1F33;
}

div.elkMenu .closeButton {
	position: absolute;
	top: 32px;
	right: 0;
	width: 24px;
	height: 24px;
	background: none;
	border: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: opacity 0.2s ease;
	padding: 0;
	display: none;
	z-index: 9000;
}

div.elkMenu .overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, .5);
	z-index: 8500;
	display: none;
}

/* === DESKTOP MENU STYLES === */
@media (min-width: 991px) {
	
div.elkMenu .menuNav {
width: 100%;
min-height: 96px;
height: auto;
top: 70px;
display: none;
justify-content: center;
}

div.elkMenu .menuList {
flex-direction: row;
justify-content: space-between;
padding: 6px 0 0;
display: flex;
height: 100%;
width: 1216px;
max-width: 1216px;
}

div.elkMenu .menuItem {
height: 100%;
position: static;
display: flex;
flex-direction: column;
flex: 1 1;
}

div.elkMenu .menuButton {
padding: 0;
margin: 0 5px;
height: 100%;
display: flex;
align-items: center;
justify-content: flex-start;
flex-direction: column;
cursor: pointer;
text-align: center;
border-top-left-radius: 8px;
border-top-right-radius: 8px;
}

div.elkMenu .menuButtonContent {
flex-direction: column;
}

	div.elkMenu .menuLabel {
		margin-left: 0;
		min-height: 48px;
	}

	div.elkMenu .menuIcon {
		margin: 8px 0;
	}

	div.elkMenu .activeTopMenuItem > .menuButton {
		background: none;
		color: var(--primary);
		position: relative;
	}

	div.elkMenu .activeTopMenuItem .menuIcon {
		background: var(--primary) !important;
		opacity: 1 !important;
	}

	div.elkMenu .activeTopMenuItem .menuButtonContent::before {
		position: absolute;
		content: "";
		width: calc(100% + 2px);
		height: calc(100% + 2px);
		left: 0px;
		top: 0;
		display: block;
		background: #fff;
		z-index: -1;
		border-radius: 4px 4px 0 0;
	}

	div.elkMenu .subMenuWrapper {
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		width: 100%;
		background: #fff;
		z-index: 10;
		display: none;
		padding: 0;
		height: fit-content;
		border-radius: 4px;
	}

	div.elkMenu .subMenuContent {
		max-width: 1216px;
		margin: 0 auto;
		width: 100%;
	}

	div.elkMenu .subMenuList {
		border-radius: 0;
		box-shadow: none;
		margin: 0;
		background: #fff;
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		gap: 16px;
		text-align: start;
		padding: 32px 0 34px 0;
		border-radius: 4px;
		margin-left: -12px;
	}

	div.elkMenu .subMenuItem {
		min-width: 160px;
		text-align: left;
		padding: 0;
	}

	div.elkMenu .closeButton {
		display: flex;
	}
}

/* === SERVICES MENU STYLES === */
div.elkMenu .services-menu {
	display: flex;
	align-items: center;
	gap: 32px;
	justify-content: flex-end;
	flex: 1;
}

div.elkMenu .services-button {
	font-weight: 500;
	color: var(--primary);
	cursor: pointer;
	user-select: none;
	padding: 8px 16px;
	border-radius: 4px;
	transition: background-color 0.2s;
}

div.elkMenu .services-button:hover {
	background-color: rgba(9, 59, 128, 0.05);
}

div.elkMenu .search-icon {
	width: 24px;
	height: 24px;
	margin: auto;
	cursor: pointer;
}

/* === MAIN CONTENT STYLES === */
div.elkMenu .main-content {
	max-width: 1216px;
	margin: 40px auto;
	padding: 0 20px;
}

div.elkMenu .content-header {
	margin-bottom: 30px;
}

div.elkMenu .content-header h1 {
	font-size: 24px;
	margin-bottom: 10px;
	color: var(--primary);
}

div.elkMenu .content-header p {
	color: #666;
}

div.elkMenu .content-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 20px;
}

div.elkMenu .card {
	background-color: #fff;
	border-radius: 8px;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
	padding: 20px;
	transition: transform 0.2s;
}

div.elkMenu .card:hover {
	transform: translateY(-5px);
}

div.elkMenu .card h3 {
	margin-bottom: 10px;
	font-size: 18px;
	color: var(--primary);
}

div.elkMenu .card p {
	color: #666;
	font-size: 14px;
}

/* === ACTIVE STATES === */
div.elkMenu .menuItem.activeTopMenuItem .subMenuWrapper {
	display: block;
}


.nice-navbar-container
{
	z-index: 9999 !important;
	position: relative !important;
	background-color: #ffffff !important;
}

#nice-settings-menu-id {
	position: fixed;
	z-index: 6000;
	right: 10px;
	left: auto;
}


#page-my-index div.nice-dashboard-container div.menuNav {
	margin-top: -150px !important;
}
