/* ========================================================================================================================== */
/*                                              Application Menu - Vertical Full                                              */
/* ========================================================================================================================== */
.cam-vf-menu {
	background-color : var(--color-app-menu-h-bg);
	height           : 100%;
	width            : 240px;
	display          : flex;
	flex-direction   : column;
	color            : var(--color-app-menu-title);
	z-index          : 99;
}
/* -------------------------------------------------------------------------------------------------------------------------- */
/*                                                                                                                Menu Header */
/* -------------------------------------------------------------------------------------------------------------------------- */
.cam-vf-header {
	flex-shrink                : 0;
    flex-basis                 : 42px;
    line-height                : 22px;
	font-size                  : 16px;
	padding                    : 10px 15px;
	margin-bottom              : 10px;
	background-color           : var(--color-app-menu-header-bg);
	border-top-right-radius    : 5px;
    border-bottom-right-radius : 5px;
}
.cam-vf-menu.left .cam-vf-header {
	border-top-right-radius    : 5px;
    border-bottom-right-radius : 5px;
}
.cam-vf-menu.right .cam-vf-header {
	border-top-left-radius    : 5px;
    border-bottom-left-radius : 5px;
}
/* -------------------------------------------------------------------------------------------------------------------------- */
/*                                                                                                                  Menu Body */
/* -------------------------------------------------------------------------------------------------------------------------- */
.cam-vf-body {
	flex-grow  : 1;
	overflow-x : hidden;
}
.cam-vf-menu.left .cam-vf-body {
	direction : rtl;
}
.cam-vf-menu.left .cam-vf-body > div {
	direction : ltr;
}
.cam-vf-menu.right .cam-vf-body > div {
	direction : rtl;
}
.cam-vf-menu.floating {
	position   : absolute;
	box-shadow : 0 0 var(--size-float-shadow) var(--color-float-shadow);
}
.cam-vf-option {
	display        : flex;
	flex-direction : row;
	align-items    : center;
	padding        : 10px 15px;
	cursor         : pointer;
}
.cam-vf-option:hover {
	color : var(--color-app-menu-lvl1-h);
}
.cam-vf-option-icon {
	flex-shrink : 0;
	font-size   : 18px;
}
.cam-vf-menu.left .cam-vf-option-icon {
	margin-right : 10px;
	min-width    : 24px;
	text-align   : center;
}
.cam-vf-menu.right .cam-vf-option-icon {
	margin-left : 10px;
	min-width   : 24px;
	text-align  : center;
}
.cam-vf-option-label {
	flex-grow : 1;
}
.cam-vf-option-arrow {
	flex-shrink : 0;
	transition  : transform 0.7s;
}
.cam-vf-menu.left .cam-vf-option-arrow {
	transform   : rotate(-90deg);
	margin-left : 10px;
}
.cam-vf-menu.right .cam-vf-option-arrow {
	transform    : rotate(90deg);
	margin-right : 10px;
}
.cam-vf-menu .cam-vf-option-arrow.open {
	transform : rotate(0);
}
.cam-vf-item-menu-content {
	margin-left : 14px;
	overflow    : hidden;
	transition  : max-height 0.7s;
}
.cam-vf-item-menu-content.closed {
	max-height : 0 !important;
}
/* -------------------------------------------------------------------------------------------------------------------------- */
/*                                                                                                                Menu Footer */
/* -------------------------------------------------------------------------------------------------------------------------- */
.cam-vf-footer {
	flex-shrink : 0;
}/* ========================================================================================================================== */
/*                                              Application Menu - Vertical Compact                                              */
/* ========================================================================================================================== */
.cam-vc-menu {
	background-color : var(--color-app-menu-v-bg);
	display          : flex;
	align-items      : center;
	color            : var(--color-app-menu-title);
}
.cam-vc-menu.left, .cam-vc-menu.right {
	flex-direction : column;
	height         : 100%;
	width          : 70px;
}
.cam-vc-menu.left {
	border-top-right-radius : 5px;
}
.cam-vc-menu.right {
	border-top-left-radius : 5px;
}
.cam-vc-menu.top, .cam-vc-menu.bottom {
	flex-direction : row;
	height         : 40px;
	width          : calc(100% - 20px);
	border         : 1px solid var(--color-c4);
    border-radius  : 5px;
    margin         : 0 10px 10px;
}
.cam-vc-menu.top {
	margin-bottom : 1px;
}
/* -------------------------------------------------------------------------------------------------------------------------- */
/*                                                                                                                Menu Header */
/* -------------------------------------------------------------------------------------------------------------------------- */
.cam-vc-header {
	flex-shrink : 0;
	font-size   : 16px;
	padding     : 15px;
}
/* -------------------------------------------------------------------------------------------------------------------------- */
/*                                                                                                                  Menu Body */
/* -------------------------------------------------------------------------------------------------------------------------- */
.cam-vc-body {
	flex-grow  : 1;
	display    : flex;
}
.cam-vc-menu.left .cam-vc-body, .cam-vc-menu.right .cam-vc-body {
	padding        : 10px 0;
	flex-direction : column;
	overflow-x     : hidden;
}
.cam-vc-menu.top .cam-vc-body, .cam-vc-menu.bottom .cam-vc-body {
	padding        : 0 10px;
	flex-direction : row;
	overflow-y     : hidden;
}
.cam-vc-menu.left .cam-vc-body {
	direction : rtl;
}
/* .cam-vc-menu.left .cam-vc-body > div {
	direction : ltr;
}
.cam-vc-menu.right .cam-vc-body > div {
	direction : rtl;
} */
.cam-vc-option {
	display         : flex;
	flex-direction  : row;
	align-items     : center;
	justify-content : center;
	padding         : 15px;
	cursor          : pointer;
}
.cam-vc-option.active {
	color : var(--color-app-menu-lvl1-h);
}
.cam-vc-option:hover {
	color : var(--color-app-menu-lvl1-h);
}
.cam-vc-option-icon {
	flex-shrink : 0;
	font-size   : 22px;
}
/* .cam-vc-menu.right .cam-vc-option-icon {
	margin-left : 10px;
} */
.cam-vc-option-label {
	flex-grow : 1;
}
.cam-vc-option-arrow {
	flex-shrink : 0;
	transition  : transform 0.7s;
}
.cam-vc-menu.left .cam-vc-option-arrow {
	transform   : rotate(-90deg);
	margin-left : 10px;
}
.cam-vc-menu.right .cam-vc-option-arrow {
	transform    : rotate(90deg);
	margin-right : 10px;
}
.cam-vc-menu .cam-vc-option-arrow.open {
	transform : rotate(0);
}
.cam-vc-item {
	display     : flex;
    align-items : center;
}
.cam-vc-item-menu-content {
	margin-left : 10px;
	overflow    : hidden;
	transition  : max-height 0.7s;
}
.cam-vc-item-menu-content.closed {
	max-height : 0 !important;
}
/* -------------------------------------------------------------------------------------------------------------------------- */
/*                                                                                                                Menu Footer */
/* -------------------------------------------------------------------------------------------------------------------------- */
.cam-vc-footer {
	flex-shrink : 0;
	margin : 0 5px;
}
.cam-vc-footer #idx_copyright_lg {
	padding : 10px 0;
}
/* ========================================================================================================================== */
.cam-vc-sm-menu {
	position         : absolute;
	background-color : var(--color-app-menu-h-bg);
	color            : var(--color-app-menu-title);
	z-index          : 3;
	min-width        : 120px;
	border-radius    : 5px;
    border           : 1px solid var(--color-app-menu-bdr);
	box-shadow       : 0 0 var(--size-float-shadow) var(--color-float-shadow);
}
/* .cam-vc-sm-menu.top, .cam-vc-sm-menu.bottom {
	padding : 0 10px;
} */
.cam-vc-sm-header {
	padding : 16px 5px;
	cursor  : pointer;
	color   : var(--color-app-menu-lvl1-h);
}
.cam-vc-sm-menu.top .cam-vc-sm-header, .cam-vc-sm-menu.bottom .cam-vc-sm-header {
	padding : 16px 15px;
}
.cam-vc-sm-menu.left .cam-vc-sm-header {
	padding-right : 15px;
}
.cam-vc-sm-menu.right .cam-vc-sm-header {
	padding-left : 15px;
}
/* .cam-vc-sm-header:hover {
	color : var(--color-app-menu-lvl1-h);
} */
.cam-vc-sm-body {
	display        : flex;
	flex-direction : column;
	/* padding-bottom : 10px; */
}
.cam-vc-sm-menu.left {
	direction : ltr;
}
.cam-vc-sm-menu.right {
	direction : rtl;
}
.cam-vc-sm-item {
	padding        : 7px 12px;
	display        : flex;
	flex-direction : row;
	align-items    : center;
	cursor         : pointer;
}
.cam-vc-sm-menu.top .cam-vc-sm-item, .cam-vc-sm-menu.bottom .cam-vc-sm-item {
	padding : 7px 22px;
}
.cam-vc-sm-item.active {
	color : var(--color-app-menu-lvl1-h);
}
.cam-vc-sm-item:hover {
	color : var(--color-app-menu-lvl1-h);
}
.cam-vc-sm-item-icon {
	flex-shrink : 0;
	font-size   : 18px;
}
.cam-vc-sm-menu.left .cam-vc-sm-item-icon {
	margin-right : 10px;
}
.cam-vc-sm-menu.right .cam-vc-sm-item-icon {
	margin-left : 10px;
}
.cam-vc-sm-item-label {
	flex-grow : 1;
	direction : ltr;
}
.cam-vc-sm-menu.right .cam-vc-sm-item-label {
	text-align : right;
}
.cam-vc-sm-item-arrow {
	flex-shrink : 0;
	/* transition  : transform 0.7s; */
}
.cam-vc-sm-menu.left .cam-vc-sm-item-arrow {
	/* transform   : rotate(-90deg); */
	margin-left : 10px;
}
.cam-vc-sm-menu.right .cam-vc-sm-item-arrow {
	/* transform    : rotate(90deg); */
	margin-right : 10px;
}