/**
* Common style for any Lib framework page
*/

/* HTML 5 marks */

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

html, body {
	height: 100%;
}

html>body {
	margin:0;
}

blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

a:hover{ cursor: pointer;}

b {font-weight: bold;}
u { text-decoration: underline; }
i { font-style: italic; }
p {
	font-size : 13px ;
	line-height : 17px ;
	color: black;
}

label {
	font-weight: bold ;
	font-size : 14px ;
	color: black;
}

.nia2_label {
	font-size: 14px ;
	font-weight: bold ;
	display: block ;
	margin-top: 5px ;
	margin-bottom:5px ;
	margin-left: 5px;
	margin-right: 5px;
	line-height: 19px;
}

.nia2_label.inactive {
	color: #888;
}
.nia2_label.inactive .nia2_button {
	opacity: 0.2;
}

.nia2_label .nia2_button {
	padding-left: 5px;
	vertical-align: middle;
}

.color_orange { color: #FF6600; }

/* Font, body and global containers */

@font-face {
    font-family: HelvNeueOrange;
    font-style: normal;
    font-weight: 400;
    src: url("../../lib/fonts/HelvNeue55_W1G.woff2") format("woff2"), url("../../lib/fonts/HelvNeue55_W1G.woff") format("woff"); /* Use font within /opt/lib even in dev env, cannot do better with variable number of items in URL (login, perimeter, application) */
}

@font-face {
    font-family: HelvNeueOrange;
    font-style: normal;
    font-weight: 700;
    src: url("../../lib/fonts/HelvNeue75_W1G.woff2") format("woff2"), url("../../lib/fonts/HelvNeue75_W1G.woff") format("woff"); /* Use font within /opt/lib even in dev env, cannot do better with variable number of items in URL (login, perimeter, application) */
}

body {
	background-color: #cccccc;
	font-family: HelvNeueOrange, Arial;
}

body.noHeaderFooter {
	background-color: #ffffff;
	padding: 10px 40px ;
}

.noHeaderFooter .page_body_content {
	padding: 0 ;
}

.displayed_page {
	background-color: white;
	min-height: 100%;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	position : relative;
}

div.page_header {
	height: 80px;
	background-color: black;
}
div.page_menu {background-color: black;}
div.page_body {flex-grow: 1;}
div.page_footer {
	padding-top: 10px;
	padding-bottom: 10px;
	box-sizing: border-box;
	background-color: black;
	line-height: 14px ;
	max-height: 40px ;
}

/* Page header */

#welcome_name {
	margin-top : 0px ;
}

div.page_header_content {
    position: relative;
    max-width: 100%;
    padding-top: 20px;
    padding-left: 40px;
    padding-right: 40px;
    box-sizing: border-box;
}

p.page_header_content_title {font-size: 14px; font-weight: bold; color: #ff6600; line-height: 40px;}
p.page_header_content_title span {color: #fff; margin-left: 10px;}

div.page_header_top_right {display: block; position: absolute; right: 40px; height: 40px; top: 2px; width: 70%;}

div.page_header_content_logo .logo_img { width: 50px; height: 50px; display: block; float: left; }
div.page_header_content_logo .logo_title {
	font-weight : bold ;
	font-size :	18px ;
	line-height : 18px ;
	display: block;
	float: left;
	margin-top: 15px;
	color: white;
	margin-left: 30px ;
	margin-bottom : 0px ;
}

div.page_header_top_right p {display: block; position: relative; float: right; font-size: 17px; line-height: 30px; color: white;  }

div.page_header_top_right p a { color: white; text-decoration: none;  }
div.page_header_top_right p a:hover { color: white; text-decoration: underline;  }


div.page_header_top_right .avatar {
	display: block;
	position: relative;
	float: right;
	margin: 5px 0px 0px 10px;
	width: 20px;
	height: 20px;
	cursor: pointer;
}
div.page_header_top_right .avatar img {
	width: 100%;
 	height: 100%;
 	vertical-align: baseline;
}

form.form_search { position: relative; float: right; margin: 5px 0px 0px 10px; }
	form.form_search input.search_img {
		display: block; float: right;
		width: 22px; height: 20px;
		border: 1px solid black;
		box-sizing: border-box;
	}
	form.form_search input.search_input {
		display: inline;
		float: right;
		width: 100px;
		height: 20px;
		margin-right: 3px;
		color: white;
		text-align: left;
		padding-left: 4px;
		border: 1px solid #ccc;
		margin-top: 1px;
		background: black;
		box-sizing: border-box;
		font: 12px Arial;
		padding-top: 2px;
	}

.bouton_lang {
	display: block;
	position: relative; float: right;
	height: 18px;
	width: 22px;
	margin: 6px 0px 0px 15px;
	padding: 0px;
	border: 1px solid white;
	text-align: center;
	font-weight : bold ;
	font-size : 12px ;
	line-height : 17px ;
	color: white;
	text-decoration: none;
	background: black;
}
.bouton_lang_selected, .bouton_lang:hover {
	background: white; cursor: pointer;color: black;
}

/* Page menu */

#main-menu {
	position: inherit;
}

div.page_menu_content {
	 margin: 0 auto;
	 min-height: 40px;
    max-width: 100%;
    padding-left: 40px;
    box-sizing: border-box;
}

div.page_menu_content ul#main-menu  li a:hover{
	text-decoration: none !important;
}

.page_menu_content ul.ul_principal {margin: 0px; padding: 0px;}
.page_menu_content ul.ul_principal li {display: inline-block; float: left; margin-right: 20px;}
.page_menu_content ul.ul_principal li a {font-size: 16px; font-weight: bold; line-height: 50px; text-decoration: none; list-style: none; color: white; display: block; float: left;}

.page_menu_content ul.ul_principal li:last-child {margin-right: 0px;}
.page_menu_content ul.ul_principal li a:hover {color: #ff6600;}

/* Mobile first layout SmartMenus Core CSS (it's not recommended editing these rules) You need this once per page no matter how many menu trees or different themes you use. */
.sm{position:relative;z-index:9999;}
.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0);}
.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right;}
.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0;}
.sm ul{display:none;}
.sm li,.sm a{position:relative;}
.sm a{display:block;}
.sm a.disabled{cursor:not-allowed;}
.sm:after{content:"\00a0";display:block;height:0;font:0px/0 serif;clear:both;visibility:hidden;overflow:hidden;}
.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;}


.new_link a {
    background: #50BE87 !important;
    color: white !important;
}
.new_link a:hover { background: #FF7900 !important; color : white !important ; }

/* Home NTMC      */
.home_ntmc_img{
	width: 30px;
	filter: invert(100);
}

.sm-blue ul li.home_ntmc_link_custom{
	border-top: 1px solid black !important;
}

/* Page body */

div.page_body_content {
	margin: 0 auto;
	padding: 10px 40px;
	max-width: 100%;
	overflow: visible;
	box-sizing: border-box;
}

/* Page footer */

div.page_footer_content {
    max-width: 100%;
    padding: 0px 40px;
    overflow: hidden;
	/*max-height: 20px ;*/
}

.page_footer_content_col   {
	min-width: 175px;
	box-sizing: border-box;
	margin: 0px;
	display: inline-block ;
}
.page_footer_content_col .p1 {
	font-size: 12px;
	line-height: 20px;
	color: white;
	min-height: 5px ;
	margin-bottom : 0 ;
	margin-top : 0 ;
}
.page_footer_content_col a{text-decoration: underline; color: #ff6600;}

.col_footer_1 {
	width: 25% ;
}
.col_footer_2 {
	margin-left : auto ;
	margin-right : auto ;
	width : 49% ;
}
.col_footer_3 {
	width : 25% ;
}

.col_footer_1 .p1 { text-align: left; }
.col_footer_2 .p1 { text-align: center; }
.col_footer_3 .p1 { text-align: right; }

@media screen and (min-width: 0px) and (max-width: 420px) {
  	div.page_header_content,  div.page_menu_content, div.page_body_content, div.page_footer_content { padding-left: 10px; padding-right: 10px; }
	div.page_header_top_right { right: 10px; width: 90%;	 }

	.page_footer_content_col { width: 100%; }
  	.col_footer_1 .p1 { text-align: center; line-height: 16px; margin-bottom: 7px; }
   .col_footer_2 .p1 { line-height: 16px; margin-bottom: 7px; }
   .col_footer_3 .p1  { text-align: center;}
   .col_footer_3 { padding-left: 0px; }
   div.page_footer { padding-bottom: 0px; }
   p#welcome_name {display: none; }
   form.form_search input.search_input { width: 75px; }

   div.page_header_content_logo .logo_title { margin-left: 60px; }
}

@media screen and (min-width: 421px) and (max-width: 800px) {
  	div.page_header_content,  div.page_menu_content, div.page_body_content, div.page_footer_content { padding-left: 10px; padding-right: 10px; }
	div.page_header_top_right {right: 10px;}
}

@media screen and (min-width: 801px) and (max-width: 1280px) {
  	div.page_header_content,  div.page_menu_content, div.page_body_content, div.page_footer_content { padding-left: 20px; padding-right: 20px; }
	div.page_header_top_right {right: 20px;}
}

/* Breadcrumb template */

ul.nia2_breadcrumb {
	display: block;
	width: 100%;
	overflow: hidden;
	min-height: 30px;
	margin-top: 0px;
	margin-bottom: 0px ;
	padding : 0px ;
}
ul.nia2_breadcrumb li {
	display: inline-block;
	float: left;
	padding: 0px;
	margin: 0px;
	font-weight: bold ;
	font-size :	12px ;
	line-height: 30px ;
	color: black;
}
ul.nia2_breadcrumb li a {
	text-decoration: none;
	display: inline-block;
	padding: 0px 5px;
	box-sizing: border-box;
	color : black ;
}
ul.nia2_breadcrumb li:first-child a {
	padding: 0px;
	padding-right: 10px;
	box-sizing: border-box;
}
ul.nia2_breadcrumb li a:hover {
	color: #ff6600;
}

/** Paragraph */
.nia2_paragraph {
	font-size : 16px;
}

.hasAction {
	cursor: pointer ;
}


/* Table template */
.nia2_table { width: 100%;}

.nia2_table thead tr th, .nia2_table tr th {
	font-weight: bold ;
	font-size : 11px ;
	line-height : 13px ;
	color: black;
	text-align: left;
	padding: 5px;
	box-sizing: border-box;
}

.nia2_table tbody tr,
.nia2_table tr {
	border-bottom: 1px solid #CCCCCC;
	height: 30px;
}
.nia2_table thead tr {
	border-bottom: none;
}

.nia2_table tbody tr td,
.nia2_table tr td {
	font-size : 11px ;
	line-height : 13px ;
	color: black;
	padding: 5px;
	box-sizing: border-box;
}
.nia2_table_rollovertr tbody tr:hover{ background-color: #FBF0DD; cursor: pointer; }
.nia2_table tbody tr.tr_selected{ background-color: #dddddd; cursor: pointer; }

/* Deprecated, use color are automatic on nia2_table elements */
.nia2_table .tr_color1 {background-color: #ffffff;}
.nia2_table .tr_color2 {background-color: #f2f2f2;}

.nia2_table tbody tr:nth-child(even)  {background-color: #ffffff;}
.nia2_table tbody tr:nth-child(odd) {background-color: #f2f2f2;}

.nia2_table tfoot tr {
	border-top: 2px solid #CCCCCC;
	height: 30px;
}
.nia2_table tfoot tr td {
	font-weight: bold ;
	font-size : 16px ;
	line-height : 30px ;
	color: black;
	text-align: left;
	vertical-align: center;
	padding: 5px;
	box-sizing: border-box;
}

.pageNumbers .page{
	display: inline-block ;
	margin : 5px ;
	cursor: pointer ;
}
.pageNumber,
.page.ellipsis {
	width : 36px ;
	height : 36px ;
	font-weight : bold ;
	text-align: center ;
	vertical-align: 19px ;
	line-height:36px;
	border: 2px solid white ;
}
.pageNumber:hover {
	border-color : #ccc ;
}
.pageNumber:active {
	background-color: #f16e00 ;
	color : white ;
	border-color : #f16e00;
}
.pageNumber.selected {
	background-color: black ;
	color : white ;
	border-color : black ;
}
/*.pageNumbers .page.ellipsis:hover {
	border-color: white;
}*/

.prevPage,
.nextPage{
	width : 40px ;
	height : 40px ;
}
.prevPage{
	background-image: url(../../lib/img/prev_page.png);
}
.prevPage:hover{
	background-image: url(../../lib/img/prev_page_hover.png);
}
.prevPage:active{
	background-image: url(../../lib/img/prev_page_pressed.png);
}
.nextPage{
	background-image: url(../../lib/img/prev_page.png);
	transform: scaleX(-1);
}
.nextPage:hover{
	background-image: url(../../lib/img/prev_page_hover.png);
}
.nextPage:active{
	background-image: url(../../lib/img/prev_page_pressed.png);
}

.prevPage.inactive, .nextPage.inactive {
	background-image: url(../../lib/img/prev_page_inactive.png);
}

/* New buttons, simplfied style */

.nia2_button {
	display: inline-block;
	vertical-align: middle;
	box-sizing: content-box;
	border-width: 2px;
	border-style: solid;
	padding: 3px 10px;
	text-decoration: none;
	font-weight: bold;
	margin: 5px;
	font-size: 14px;
	font-family: inherit;
	min-height: 20px;
	line-height: 20px;
}

.nia2_button_label {
	display: inline-block;
	white-space: nowrap;
}

.nia2_button_style_1 {
	color: black;
	background-color: white;
	border-color: black;
}
.nia2_button_style_1.hasAction:hover {
	color: white;
	background-color: black;
	cursor: pointer;
}

.nia2_button_style_1.hasAction:hover .nia2_button_img,
.nia2_button_style_1.hasAction:hover .nia2_button_imgClass {
	filter: invert(100%);
}

.nia2_button_style_2 {
	color: white;
	background-color: black;
	border-color: black;
}
.nia2_button_style_2.hasAction:hover {
	color: black;
	background-color: white;
	cursor: pointer;
}
.nia2_button_style_2 .nia2_button_img,
.nia2_button_style_2 .nia2_button_imgClass {
	filter: invert(100%);
}
.nia2_button_style_2.hasAction:hover .nia2_button_img,
.nia2_button_style_2.hasAction:hover .nia2_button_imgClass {
	filter: none;
}

.nia2_button_style_3 {
	color: white;
	background-color: #F16E00;
	border-color: #F16E00;
}
.nia2_button_style_3.hasAction:hover {
	background-color: black;
	border-color: black;
	cursor: pointer;
}
.nia2_button_style_3 .nia2_button_img,
.nia2_button_style_3 .nia2_button_imgClass {
	filter: invert(100%);
}

.nia2_button_style_4 {
	color: black;
	background-color: #32C832;
	border-color: #32C832;
}
.nia2_button_style_4.hasAction:hover {
	color:white;
	background-color: black;
	border-color: black;
	cursor: pointer;
}
.nia2_button_style_4.hasAction:hover .nia2_button_img,
.nia2_button_style_4.hasAction:hover .nia2_button_imgClass {
	filter: invert(100%);
}

.nia2_button_style_5 {
	color: white;
	background-color: #CD3C14;
	border-color: #CD3C14;
}
.nia2_button_style_5.hasAction:hover {
	background-color: black;
	border-color: black;
	cursor: pointer;
}
.nia2_button_style_5 .nia2_button_img,
.nia2_button_style_5 .nia2_button_imgClass {
	filter: invert(100%);
}

.nia2_button_style_inactive_a {
	color: #888;
	background-color: white;
	border-color: #888;
}

.nia2_button_style_inactive_b {
	color: white;
	border-color: #888;
	background-color: #888;
}

.nia2_button.hasAction.nia2_button_style_inactive_a,
.nia2_button.hasAction.nia2_button_style_inactive_b {
	cursor: unset;
}

/* no active style on drag buttons since active selector is not dismisses when drop is cancelled */
.nia2_button.nia2_button_style_1.nia2_no_drag:active,
.nia2_button.nia2_button_style_2.nia2_no_drag:active,
.nia2_button.nia2_button_style_4.nia2_no_drag:active,
.nia2_button.nia2_button_style_5.nia2_no_drag:active {
	color: white;
	background-color: #f16e00;
	border-color: #f16e00;
}
.nia2_button.nia2_button_style_3:active {
	color: white;
	background-color: black;
	border-color: black;
}

.nia2_button_imgClass {
	display: inline-block;
	width: 20px;
	height: 20px;
	background-size: cover;
	position: relative;
	top: 5px;
	margin-top: -4.5px;
}

.nia2_button_img {
	width: 20px;
	position: relative;
	top: 5px;
	margin-top: -4.5px;
}

.nia2_button_imgClass.before,
.nia2_button_img.before {
	margin-right: 5px;
}

.nia2_button_imgClass.after,
.nia2_button_img.after {
	margin-left: 5px;
}

.nia2_button.nia2_button_style_inactive_a .nia2_button_imgClass,
.nia2_button.nia2_button_style_inactive_b .nia2_button_imgClass,
.nia2_button.nia2_button_style_inactive_a .nia2_button_img,
.nia2_button.nia2_button_style_inactive_b .nia2_button_img {
	opacity: 0.4;
}
.nia2_button.nia2_button_style_inactive_a:hover .nia2_button_imgClass,
.nia2_button.nia2_button_style_inactive_b:hover .nia2_button_imgClass
.nia2_button.nia2_button_style_inactive_a:hover .nia2_button_img,
.nia2_button.nia2_button_style_inactive_b:hover .nia2_button_img {
	filter: none;
}

.nia2_button_imageOnly {
	display: inline-block;
	box-sizing: content-box;
	border: none;
	padding:0;
	margin:0;
	background-color: transparent;
	height: 40px;
}

.nia2_button_imageOnly .nia2_button_img,
.nia2_button_imageOnly .nia2_button_imgClass {
	position: relative;
}

.nia2_button_imageOnly,
.nia2_button_imageOnly .nia2_button_img,
.nia2_button_imageOnly .nia2_button_imgClass {
	height: 40px;
	width: 40px;
}

.nia2_button_imageOnly.small,
.nia2_button_imageOnly.small .nia2_button_img,
.nia2_button_imageOnly.small .nia2_button_imgClass {
	height: 30px;
	width: 30px;
}
.nia2_button_imageOnly.smaller,
.nia2_button_imageOnly.smaller .nia2_button_img,
.nia2_button_imageOnly.smaller .nia2_button_imgClass {
	height: 20px;
	width: 20px;
}

.nia2_button.no-border {
	border-color:transparent;
}

/* Old Button styles, deprecated */

.nia2_input_submit {
	background-color: white;
	border: 2px solid black;
	padding: 0.3em 5px;
	font-weight: bold ;
	font-size : 14px ;
	color: black;
	vertical-align: text-bottom;
	-moz-user-select: none;
}

.nia2_input_submit.positive {
	background-color: #32c832 ;
	color : white ;
	border : none ;
}

.nia2_input_submit.negative {
	background-color: #cd3c14 ;
	color : white ;
	border : none ;
}

.nia2_input_submit a {
	text-decoration : none ;
	color :black ;
}

.nia2_input_submit:hover a {
	color :white ;
}

.nia2_input_submit_v2 {
	background-color: white;
	float: left;
	color: black;
	border: 1px solid black;
	padding: 0px 8px;
	font-weight: bold ;
	font-size : 12px ;
	line-height : 22px ;
	margin-right: 4px;
	box-sizing: border-box;
}

a.nia2_input_submit {
	text-decoration: none ;
}

a.nia2_input_submit,
div.nia2_input_submit,
label.nia2_input_submit {
	display : inline-flex ;
	margin: 5px;
	padding-top: 4px;
	cursor: pointer ;
}

.nia2_input_submit:hover { background-color: black; color: white;}
.nia2_input_submit:active { background-color: #f16e00; color: white; border-color: #f16e00; }

.style_1 { background-color: white; color: black; border-color: black; }
.style_1:hover { background-color: black; color: white;}
.style_1:active { background-color: #f16e00; color: white; border-color: #f16e00; }

.nia2_button_group .style_2,
.style_2 { background-color: black; color: white; border-color: black; }
.nia2_button_group .style_2:hover,
.style_2:hover { background-color: white; color: black; border-color: black; }
.nia2_button_group .style_2:active,
.style_2:active { background-color: #f16e00; color: white; border-color: #f16e00; }
.nia2_button_group .style_2>a,
.style_2 a { color: white; }
.nia2_button_group .style_2>a,
.style_2:hover>a { color:black; }

.nia2_button_group .style_3,
.style_3 { background-color: #F16E00; color: white; border-color: #F16E00;}
.nia2_button_group .style_3:hover,
.style_3:hover { background-color: black; color: white; border-color: black;}
.nia2_button_group .style_3:active,
.style_3:active { background-color: white; color: black; border-color: black; }
.nia2_button_group .style_3>a,
.style_3>a { color: white; }
.nia2_button_group .style_3>img,
.style_3>img { filter: invert(100%);}

.style_4 { background-color: #32C832; color: black; border-color: #32C832; }
.style_4:hover { background-color: black; color: white; border-color: black;}
.style_4:active { background-color: #F16E00; color: white; border-color: #F16E00; }

.style_5 { background-color: #CD3C14; color: white; border-color: #CD3C14; }
.style_5:hover { background-color: black; color: white; border-color: black;}
.style_5:active { background-color: #F16E00; color: white; border-color: #F16E00; }
.style_5>a { color: white; }

.style_inactive_a,
div.style_inactive_a,
input.style_inactive_a:hover,
div.style_inactive_a:hover,
input.style_inactive_a:active {
	background-color: #ffffff;
	color: #cccccc;
	border-color: #cccccc;
	cursor: initial;
}

.style_inactive_a.nia2_input_submit:hover a {
	color: #cccccc ;
}

.style_inactive_a .buttonIcon {
	opacity: 0.2;
}

.style_inactive_a:hover .buttonIcon {
	opacity: 1;
}

.style_inactive_a>a {
	color: #ccc ;
}

img.style_inactive_a {
	opacity: 0.2;
	cursor: auto;
}

.style_inactive_b,
input.style_inactive_b:hover,
div.style_inactive_b:hover,
input.style_inactive_b:active {
	background-color: #cccccc; color: #ffffff; border-color: #cccccc;
}

.style_inactive_b>a {
	color: #fff ;
}

.nia2_input_submit.no-border {
	border-color:transparent;
}

.smaller { font-size: 10px; margin: 1px; border-width : 1px; }
.small { font-size: 14px; }
.medium { font-size: 120%; border-width : 3px;}
.large {   font-size: 150%; border-width : 3px;}

/* Obsolete text input */
.nia2_input_texte {
	border: 2px solid #cccccc;
	padding: 5px;
	background-color: white;
	font-weight: bold ;
	font-size : 14px ;
	color: black;
	box-sizing: border-box;
	height: 30px;
	font-family: inherit ;
	vertical-align: text-bottom;
	margin: 5px;
	max-width: 100%;
}
.nia2_input_texte:focus, input.nia2_input_texte:active {
	border-color: #000;
}
.nia2_input_texte[readonly='']:focus,
.nia2_input_texte[readonly='readonly']:focus {
	border-color: #ccc;
}
.nia2_input_texte.error {
	background-image: url('../../lib/img/warning_important_yellow.svg');
	background-size: 31px;
	background-repeat: no-repeat;
	background-position: right;
}

.nia2_input_texte.error-red {
	border-color:red;
}

/* Text input */
.nia2_text_input {
	border: 2px solid #cccccc;
	padding: 5px;
	background-color: white;
	font-weight: bold ;
	font-size : 14px ;
	color: black;
	box-sizing: border-box;
	height: 30px;
	font-family: inherit ;
	vertical-align: middle;
	margin: 5px;
	max-width: 100%;
}
.nia2_input_text_auto_size {
	width: calc( 100% - 14px );
}

.nia2_form .nia2_input_text_auto_size {
	width: calc( 100% - 10px );
}

.nia2_text_input:focus,
input.nia2_text_input:active {
	border-color: #000;
}
.nia2_text_input[readonly='']:focus,
.nia2_text_input[readonly='readonly']:focus {
	border-color: #ccc;
}
.nia2_text_input[readonly=''],
.nia2_text_input[readonly='readonly'] {
	background-color: #eee;
	color: #888;
}

.nia2_text_input.error {
	background-image: url('../../lib/img/warning_important_yellow.svg');
	background-size: 26px;
	background-repeat: no-repeat;
	background-position: right;
}

.nia2_text_input.error-red {
	border-color:red;
}

.nia2_button.small.nia2_view_pass {
	position: relative;
	width: 0;
	right: 38px;
	overflow: visible;
}

.nia2_button.small.nia2_view_pass>img {
	width:25px;
	height: 25px;
	background-color: white;
	right: -4px;
}

.nia2_button_imageOnly.small .nia2_button_img{
	height: 30px;
	width: 30px;
}

.nia2_button_imageOnly.small.readonly .nia2_button_img{
	background-color: #eee;
}

/* Button group */

.nia2_button_group_exclusive {
	margin-left : 5px ;
	margin-right : 5px ;
}

.nia2_button_group_exclusive .nia2_button {
	margin-left : -1px ;
	margin-right : -1px ;
	border-collapse: collapse ;
}

.nia2_button_group_exclusive .nia2_button.nia2_button_style_3 {
	z-index: 1 ;
	position: relative ;
}

/* Label */

.nia2_input_label{
	font-weight: bold ;
	font-size : 12px ;
	line-height : 20px ;
	color: black;
}

/* Datepicker (TODO gruesome CSS, needs cleanup) */
div.ui-datepicker {
  background-color: white !important;
  border: 1px solid black !important;
  border-radius: 0px !important;
  font-family: Arial !important;
}

div.ui-datepicker a.ui-state-default {
  font: bold 12px Arial !important;
  color: black !important;
  text-align: center;
}

div.ui-datepicker a.ui-state-highlight,
div.ui-datepicker a.ui-state-active {
  border: 1px solid #f16e00 !important;
  background: none !important;
  background-color: #f16e00 !important;
  font: bold 12px Arial !important;
  color: white !important;

}

div.ui-datepicker div.ui-datepicker-header {
  border-radius: none !important;
  border: none !important;
  background: none !important;
}

.nia_datepicker{
	height: 30px;
	width: 122px;

	border: 2px solid #ccc;

	font-size: 14px;
	font-weight: bold;
	font-family: inherit;
	line-height: 24px;
	text-align: right;
	padding-right: 13px;
	box-sizing: border-box;

	background: url("../../lib/img/calendar_input1.png");
	background-repeat: no-repeat;
	background-position: 5px 3px;
	background-size: 22px 22px;
	margin-right: 10px ;
	margin-top : 5px ;
	margin-bottom : 5px ;
	padding-top:7px;
}

.nia_timepicker1{
	height: 30px;
	width: 83px;

	border: 2px solid #ccc;

	font-size: 14px;
	font-weight: bold;
	font-family: inherit;
	line-height: 24px;
	text-align: right;
	padding-right: 8px;
	box-sizing: border-box;

	background: url("../../lib/img/time.png");
	background-repeat: no-repeat;
	background-position: 6px 6px;
	background-size: 16px 16px;

	margin-right: 10px ;
	margin-top : 5px ;
	margin-bottom : 5px ;
	padding-top:7px;
}

div.ui-datepicker a.ui-state-default {
  text-align: center !important;
  line-height: 20px !important;
  height: 20px !important;
  font-size: 14px !important;
  font-weight: bold !important;
  padding-left: 0px !important; padding-right: 0px !important;
}

.beginCheckIcon {
	background-image: url(../../lib/img/begin_arrow_uncolored.png);
}

.endCheckIcon {
	background-image: url(../../lib/img/end_arrow_uncolored.png);
}

.defaultCheckIcon {
	background-image: url(../../lib/img/Modifier_delete_grey.png);
}

.filter_on .defaultCheckIcon {
	background-image: url(../../lib/img/Modifier_delete_orange.png);
}

.filter_on .beginCheckIcon {
	background-image: url(../../lib/img/begin_arrow_colored.png) ;
}

.filter_on .endCheckIcon {
	background-image: url(../../lib/img/end_arrow_colored.png) ;
}

/* date time widget, JS native code */
.nia2_datetime_dateContainer .nia2_button,
.nia2_datetime_timeContainer .nia2_button {
	position: absolute;
	right:9px;
	top:9px;
	background-size: 20px;
}
.smaller>.nia2_button_imgClass.nia2_datetime_img {
	background-image: url(../../lib/img/delete.svg);
}
.smaller.unset>.nia2_button_imgClass.nia2_datetime_img {
	background-image: none ;
}

.nia2_datetime_dateContainer,
.nia2_datetime_timeContainer {
	position: relative;
	display: inline-block;
}

.nia2_datetime_dateContainer {
	width: 151px;
}
.nia2_datetime_timeContainer {
	width: 110px;
}

.nia2_datetime_calendar,
.nia2_datetime_clock {
	border: 2px solid black;
	position: absolute;
	background-color: white;
	padding: 5px;
	padding-top: 10px;
	z-index: 10000;
}

.nia2_datetime_hours,
.nia2_datetime_minutes {
	display: inline-block;
	margin-left: 10px;
	margin-right: 10px;
}

.nia2_datetime_clock_number {
	text-align: center;
	font-weight: bold;
	padding-bottom: 8px;
}

.nia2_datetime_date {
	width: 141px;
	background-image: url(../../lib/img/calendar_day.svg);
	background-position: 2px 2px;
	background-repeat: no-repeat;
	background-size: 22px;
	padding-left: 33px;
}
.nia2_datetime_date[readonly='readonly'],
.nia2_datetime_time[readonly='readonly'] {
	opacity: 0.5;
	cursor: default;
	color: black;
}

.nia2_datetime_day {
	text-align: right;
	min-width: 26px;
	padding-right:5px;
	color: #888
}
.nia2_datetime_day.current_month {
	font-weight: bold;
	color: black;
}
.nia2_datetime_day.current_day {
	background-color: #F16E00;
	color: white;
}
.nia2_datetime_day:hover {
	background-color: black;
	color: white;
}
.nia2_datetime_day.today {
	border: 2px solid #F16E00;
	box-sizing: border-box;
}

.nia2_datetime .prevPage,
.nia2_datetime .nextPage,
.nia2_datetime_month {
	display: inline-block;
}

.nia2_datetime .prevPage,
.nia2_datetime .nextPage {
	background-size: 38px;
	background-position: -4px;
}

.nia2_datetime_nav {
	display: flex;
}

.nia2_datetime_month {
	flex-grow: 1;
	text-align: center;
}

.nia2_datetime_time {
	width: 100px;
	background-image: url(../../lib/img/clock_white.svg);
	background-position: 4px 2px;
	background-repeat: no-repeat;
	background-size: 22px;
	padding-left: 33px;
}

.nia2_datetime_up {
	transform: rotate(90deg);
}
.nia2_datetime_down {
	transform: rotate(270deg);
}

.nia2_datetime_utc {
	font-weight: bold;
	display: inline-block;
	position: relative;
    top: 2px;
}

/* Upload/download file management  */

.nia2_upload {
	vertical-align: middle;
	height: 30px;
}

.nia2_upload .nia2_button {
	margin-top: 0;
}

.uploadFile {
	background-image: url(../../lib/img/modifier_upload.svg);
	background-size: cover ;
	width : 30px ;
	height : 30px ;
	display: inline-block;
	margin-left: 5px ;
	margin-right: 5px ;
	cursor: pointer;
}

.standardUploadInput {
	display: none ;
}

.nia2_uploadResult,
.nia2_downloadResult {
	margin-bottom : 15px ;
}

.nia2_uploadResult.ko,
.nia2_downloadResult.ko {

	color: red ;
}

.newFileNameInput {
	margin-right: 15px ;
}

#fileDownload input,
#fileDownload select {
	margin-right: 20px;
}

/* Pop up */

.nia2_has_popup {
	overflow: hidden; /* disallow page scroll bar when a popup is displayed */
	padding-right: 16px;
}

.nia_popup {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right:0;
	background: rgba(0,0,0,0.6);
	z-index: 10000;
	overflow-y: scroll;
}

.nia_popup.noBackground {
	background: none;
}

.nia_popup_inner {
	padding: 25px;
	position: relative;
	outline: solid 3px black;
	background: #fff;
	display: inline-block;
	left: 50vw;
	transform: translate(-50%, 10vh);
}

.nia_popup_inner.hasWidth {
	display: block;
	left: unset;
	transform: translate(0,0);
	margin-left: auto;
	margin-right: auto;
	margin-top: 10vh;
}


.nia_popup_inner .cancel {
	border-color: white ;
}

.nia_popup_inner .cancel:hover {
	border-color: black;
}
.nia_popup_inner .cancel:hover:active {
	border-color: #f16e00;
}

.nia_popup_inner>.buttonIconImg:first-child {
	padding-right: 10px;
	float:left;
}
.nia_popup_inner>p:nth-child(2) {
	padding-right: 10px;
	padding-top: 5px;
	position: relative;
	display: inline-block;
}

.nia_popup-close {
	width: 30px;
	height: 30px;
	padding-top: 4px;
	display: inline-block;
	position: absolute;
	top: 14px;
	right: 8px;
	transition: ease 0.25s all;
	transform: translate(50%, -50.5%);
	font-size: 20px;
	text-align: center;
	line-height: 100%;
	color: black;
	text-decoration: none;
}

.nia_popup-close:hover {
	/*transform: translate(50%, -50.5%) rotate(180deg);
	background: rgba(0,0,0,1);*/
	text-decoration: none;
}

.nia_popup_title {
	vertical-align: middle;
	font-weight: bold;
	margin-bottom: 20px ;
}

.nia_popup_buttons {
	display: block;
	text-align: center;
	margin-top: 10px;
}

.nia_popup label {
	margin-right: 5px;
}

.nia_message p {
	font-weight : bold ;
	display : inline;
	max-height: 70vh;
	overflow-y: auto;
}

.nia_message .nia_popup_inner {
	top: 50vh;
	transform: translate(-50%, -50%);
}

/** Builtin loading popup */
.loading-popup .nia2_label {
	display: inline-block;
	padding-left: 10px;
}

/* smooth display for loading popup (prevents blinking) */
.displayed_page .nia_popup.loading-popup.nia2_hidden {
	display: block !important;
}
.loading-popup.nia2_hidden .nia_popup_inner{
	opacity: 0;
}
.loading-popup .nia_popup_inner {
	opacity: 1;
	transition: opacity 0.5s linear;
}

.loading-popup .nia_popup_inner .result {
	display: none;
}

.loading-popup .nia_popup_buttons {
	display: none;
}

/** Drop down list */
.nia2_dropdown.nia2_input_submit {
	position: relative ;
	vertical-align: middle;
	border-color: #ccc ;
	text-align: left;
	min-height: 18px;
}

.nia2_dropdown.nia2_auto_size {
	width: calc( 100% - 28px );
}

.nia2_dropdown.nia2_input_submit.readonly {
	cursor: auto;
}
.nia2_dropdown.nia2_input_submit.readonly:hover {
	background-color: transparent;
	color: black;
}
.nia2_dropdown.nia2_input_submit.readonly img {
	opacity: 0.3;
}
.nia2_dropdown.nia2_input_submit.readonly:hover img {
	filter:none;
}

.nia2_dropdown_list_span {
	min-width: 150px ;
	display: flex;
	flex-grow: 1;
}

.nia2_dropdown_list {
	position: absolute;
	top: 20px ;
	left: 10px ;
	background-color: white;
	min-width: 160px;
	z-index: 10000;
	margin-left: -12px;
	margin-top: 6px;
	border: 2px solid #CCC;
	max-height: 500px;
	overflow-y:auto;
}

.nia2_dropdown_list div {
	color: black;
	padding: 6px 9px;
	text-decoration: none;
	display: block;
	white-space: nowrap;
}

.nia2_dropdown_list div:hover {
	background-color: black;
	color: white ;
}

.nia2_dropdown img {
	height: 18px ;
	margin-top: -1px ;
	margin-left: 7px ;
}

.nia2_dropdown:hover img {
	filter: invert(100%);
}

.nia_popup_inner>p.result {
	color : red ;
	padding: 0px;
	display: block;
}

/** Select */

.nia2_select {
	display: inline-block;
	position: relative;
	height: 26px;
    width: 200px;
    border: 2px solid #ccc;
	overflow: hidden;
	margin: 5px ;
	vertical-align: middle;
	background-color: white;
}

.nia2_select:active {
	border-color: black;
}
.nia2_select.nia2_select_readonly {
	border-color: #ccc;
}

.nia2_select select {
	width: calc(100% - 30px);
    border: none;
    box-shadow: none;
    background: transparent;
    background-image: none;
	-webkit-appearance: none;
	font-family: inherit;
	font-weight: bold;
	font-size: 14px;
	padding-top: 4px;
	padding-bottom: 5px;
	padding-left: 5px;
}

.nia2_select_readonly,
.nia2_select_readonly select {
	cursor: default;
	background-color: #eee;
	color: #888;
}

.nia2_select.nia2_select_readonly::after {
	opacity: 0.5;
	background-color: #eee;
}

.nia2_select:after {
	position: absolute;
	content: "";
	top: 10px;
	right: 10px;
	width: 0;
	height: 0;
	border: 7px solid transparent;
	border-color: black transparent transparent transparent;
}

.nia2_select_autosize {
	width: calc( 100% - 14px );
}

/* Multi select*/

.nia2_multiselect_top {
	display: flex;
	align-items: center;
}

.nia2_multiselect_text {
	display: inline-flex;
	flex-grow: 1;
	vertical-align: middle;
}

.nia2_multiselect:hover .nia2_multiselect_edit {
	visibility: visible;
}

.nia2_multiselect_edit {
	visibility: hidden;
}

.nia2_multiselect_label {
	display: inline-flex;
	flex-grow: 1;
	font-weight: bold;
	min-width: 220px;
	padding-right: 20px;
}

.nia2_multiselect_none {
	font-style: italic;
	line-height: 40px;
}

.nia2_multiselect_values {
	max-width: 50vw;
	min-width: 250px;
	margin-top: 10px;
	margin-bottom: 10px;
}

.nia2_multiselect_autocomplete {
	display: block;
}

.nia2_multiselect_cb {
	overflow-y: scroll;
    overflow-x: hidden;
	max-height: calc( 80vh - 190px );
}

#nia2_selector_items {
	direction: ltr;
	column-count: 3;
	overflow-y: hidden;
    overflow-x: hidden;
}

.nia2_multiselect_cb .nia2_checkbox {
	margin: 0;
	padding: 4px 5px 1px 5px;
}

.nia2_multiselect_select {
	width: calc( 100% - 35px );
}

#nia2_multiselect_search {
	display: flex;
	flex-direction: row-reverse;
	position: sticky;
	top: 0;
	align-items: center;
}

#nia2_selected_all {
	font-style: italic;
	margin-top: 20px;
	margin-bottom: 15px;
	white-space: pre;
}

/** Text area */
.nia2_textarea {
	border : 2px solid #ccc ;
	font-family: inherit ;
	font-size: 16px;
	max-width: 100%;
	margin-left: 5px;
	margin-right: 5px;
	padding: 4px;
	resize: vertical;
}

.nia2_textarea:focus {
	border-color: black;
}

.nia2_textarea[readonly=readonly]:focus {
	border-color: #ccc;
}

.nia2_textarea[readonly=readonly] {
	color: #888;
	background-color: #eee;
}

/* Chooser */

#popup_nia2_chooser_selectorContainer #selector {
	margin: 5px;
}

#popup_nia2_chooser_selectorContainer #selector .nia2_button {
	display: block;
}

#popup_nia2_chooser_selectorContainer #selected,
#popup_nia2_chooser_selectorContainer #available {
	display: inline-block;
}

#popup_nia2_chooser_selectorContainer #selected-items,
#popup_nia2_chooser_selectorContainer #available-items {
	border : 2px solid black;
	height: 500px;
	overflow-y: auto;
	width: calc( 50% - 10px );
	min-width: 400px;
}

#popup_nia2_chooser_selectorContainer #available {
	margin-right: 10px;
}

/* Ace text area */
.nia2_acetextarea {
	position: relative;
	width: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: 5px;
	border: 2px solid #ccc;
}

/* Diff */
.nia2_diff {
	position: relative;
	width: 100%;
	border: 2px solid #ccc;
	margin-left: 5px;
}

/** Images */
.buttonIconImg {
	height: 40px;
	width: 40px;
	background-size: cover;
	cursor: pointer ;
	vertical-align: super;
	position: relative;
	top: 8px;
}

.buttonImgClass {
	display: inline-block;
	height: 40px;
	width: 40px;
	background-size: cover;
	cursor: pointer ;
	vertical-align: super;
	position: relative;
	top: 10px;
}

.small.buttonImgClass {
	height: 30px;
	width: 30px;
	top:5px;
}

.smaller.buttonImgClass {
	height: 20px;
	width: 20px;
	top: 1px;
}

.small .buttonIconImg,
.small.buttonIconImg {
	margin-top: auto ;
	margin-bottom: auto ;
	height: 30px;
	width: 30px;
	top: 4px;
}

.smaller .buttonIconImg,
.smaller.buttonIconImg {
	margin-top: auto ;
	margin-bottom: auto ;
	height: 20px;
	width: 20px;
	top: 0;
}

.buttonIconImg.noAction {
	cursor:auto;
}

.buttonLabelImgClass {
	display:inline-block;
	width: 17px;
	height: 17px;
	background-size: cover;
	vertical-align: sub;
}
.nia2_input_submit:hover .buttonLabelImgClass {
	filter: invert(100%);
}

.style_inactive_a.nia2_input_submit .buttonLabelImgClass,
.style_inactive_b.nia2_input_submit .buttonLabelImgClass {
	filter: invert(80%);
}

.style_inactive_a.nia2_input_submit:hover .buttonLabelImgClass,
.style_inactive_b.nia2_input_submit:hover .buttonLabelImgClass {
	filter: invert(80%);
}

.buttonLabelImgClass.after {
	margin-left: 5px;
	margin-right: -4px;
}

.buttonLabelImgClass.before {
	margin-left: -4px;
	margin-right: 5px;
}

.buttonIcon::before,
img.buttonIcon {
	content: "";
	display: inline-block;
	width: 17px;
	height: 17px;
	background-size: cover;
	margin-right: 5px;
	margin-left: -2px;
}

.buttonIcon:hover::before,
.nia2_input_submit:hover img.buttonIcon {
	filter: invert(100%);
}

.style_inactive_a.nia2_input_submit:hover img.buttonIcon,
.style_inactive_b.nia2_input_submit:hover img.buttonIcon {
	filter: invert(80%);
}

.nia2_input_submit .iconBeforeText {
	margin-left: -2px;
	margin-right: 5px;
	vertical-align: sub;
}

.nia2_input_submit .iconAfterText {
	margin-left: 5px;
	margin-right: -2px;
	vertical-align: sub;
}

/* Dynamic table from niaTools */

/* Scroll on body with a sticky header */
.niaDynamicTable.dt-scroll {
	display: block;
	overflow-y: auto;
}

.niaDynamicTable.dt-scroll thead {
	position: sticky ;
	top : 0 ;
}

.niaDynamicTable.dt-scroll th {
	background-color: white ;
}

.dt-orderable .dt-headers {
	cursor : pointer ;
}

.dt-orderable .dt-headers th::after {
	content: ' ';
	display: inline;
	width: 1.7em;
	height: 1.7em;
	padding-left: 20px;
	padding-right: 5px;
	background-size: 1.7em;
	background-repeat: no-repeat;
	background-position: 100%;
}

.dt-orderable .dt-headers:hover th::after {
	background-image: url(../../lib/img/sort_by_asc.svg);
	opacity: 0.5;
}

.dt-orderable .dt-headers .dt-order.dt-orderAsc::after {
	background-image: url(../../lib/img/sort_by_asc.svg);
	opacity: 1;
}

.dt-orderable .dt-headers .dt-order.dt-orderDesc::after {
	background-image: url(../../lib/img/sort_by_desc.svg);
	opacity: 1;
}

.dt-orderable .dt-headers th.no-order::after {
	display: none;
}

.dt-orderable .dt-headers:hover th.no-order {
	cursor: auto;
}

.dt-empty,
.dt-to-be-continued {
	text-align: center;
	font-style: italic;
	cursor: pointer;
}

.niaDynamicTable .dt-error {
	color: red ;
}

.niaDynamicTable thead .dt-search .nia2_input {
	margin-left: 0;
	margin-right: 0;
}

.niaDynamicTable thead .dt-search .nia2_text_input,
.niaDynamicTable thead .dt-search .nia2_autocomplete_input_text {
	display: block;
	width: 100%;
}

.niaDynamicTable thead .dt-search .nia2_button {
	white-space: nowrap;
	overflow-x: hidden;
	text-overflow: ellipsis;
}

.niaDynamicTable .nia2_button.no-border {
	font-weight: normal;
	background-color: transparent;
	font-size: inherit;
	margin: 0;
	padding-left: 2px;
	padding-right: 2px;
}
.niaDynamicTable .nia2_button.no-border:active {
	background-color: transparent;
	border-color: transparent;
}
.niaDynamicTable .nia2_button.no-border:hover {
	color: black;
	filter: invert(0%)
}
.niaDynamicTable .nia2_button.no-border:hover .nia2_button_img,
.niaDynamicTable .nia2_button.no-border:hover .nia2_button_imgClass {
	filter: invert(0%);
}

.dt-search .nia2_autocomplete_suggestions {
	top: 28px;
}

.dt-search .nia2_multiselect {
	border-color: #ccc;
}

.dt-search .nia2_select {
	width: 100%;
	min-width: 75px;
}

.nia2_table tr.dt-to-be-continued {
	background-color: transparent ;
}

.dt-search {
	height:unset;
}

.nia2_table .dt-search>th{
	padding-top:0;
	padding-bottom:0;
}

.dt-search .nia2_input_texte {
	margin:0;
}

.dt-search .nia2_dropdown_list_span {
	min-width: unset;
	margin-top: 2px;
}

.niaDynamicTable .dt-groups th {
	text-align: center;
	background-color: #e8e8e8;
	outline: 4px solid white;
}

.niaDynamicTable .dt-groups th::before,
.niaDynamicTable .dt-groups th::after{
	border-left: 10px solid white;
}

.dt-group-start {
	box-shadow: -4px 0px 0px 0px white;
}

.dt-group-end {
	box-shadow: 4px 0px 0px 0px white;
}

/** Auto complete input field from niaTools */

.nia2_autocomplete_input_text {
	position: relative ;
}

.nia2_autocomplete_suggestions{
	display : none ;
	position : absolute;
	background-color : white ;
	border : 2px solid #cccccc ;
	z-index: 100002;
	font-size: 14px ;
	max-height: 460px;
	overflow-y: auto;
	overflow-x: hidden;
	top: 33px;
	left: 5px;
}

.nia2_autocomplete_more {
	padding: 8px 24px 8px 8px;
	font-style: italic;
	color: #888;
}

.nia2_autocomplete_suggestion {
	cursor:pointer ;
	font-weight: bold ;
	padding: 8px ;
	padding-right: 24px;
	white-space: nowrap;
}

.nia2_autocomplete_suggestion:hover {
	cursor:pointer ;
	color:white;
	background-color : black ;
}

/* deprecated style for user/entity auto complete */
.autocomplete_entity, .autocomplete_cuid {
	font-weight : normal ;
}
.autocomplete_mail {
	font-style : italic ;
}

select.orange_select {
	-moz-appearance: none;
	-webkit-appearance: none;
	border: 2px solid black;
	position: relative;
	background: url("../../lib/img/Down.png") no-repeat 97%;
	background-size: 20px 20px;
	padding: 0.2em 25px 0.2em 5px;
	font-weight: 600;
}
select.orange_select.selected {
	background-image: url(../../lib/img/Down_white.png);
	color: white;
	border-color: #F16E00;
	background-color: #F16E00;
}
input[type="checkbox"].orange_checkbox {
	-webkit-appearance: none;
	-moz-appearance: none;
	border: 2px solid black;
	width: 15px;
	height: 15px;
	position: relative;
}

input[type="checkbox"].orange_checkbox:checked:after {
	background-image: url(../../lib/img/checkOrange.png);
	background-size: 23px 23px;
	background-position: 0px -2px;
	background-repeat: no-repeat;
	display: inline-block;
	content: "";
	height: 30px;
	width: 30px;
	position: absolute;
	top: -5px;
	left: -5px;
}

/* Checkbox */
.nia2_checkbox {
	display: flex;
	margin:5px;
	cursor: pointer;
	vertical-align: middle;
}
.true .nia2_checkbox_img {
	background-image: url(../../lib/img/CheckBox_selected.png);
}
.inactive.true .nia2_checkbox_img {
	background-image: url(../../lib/img/CheckBox_selected_inactive.png);
}
.nia2_checkbox.inactive {
	cursor: default;
}
.nia2_checkbox_img {
	background-image: url(../../lib/img/Checkbox_unselected.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: right;
	width: 20px;
	height: 20px;
	display: inline-flex;
}
.nia2_checkbox_label {
	font-size: 16px;
	font-weight: bold;
	margin-left: 5px ;
	margin-right: 5px ;
	display: inline-flex;
	user-select: none;
}

.nia2_checkbox.inactive .nia2_checkbox_label {
	color: #888;
}

/* Radio buttons */

.nia2_radio_label{
	cursor: pointer;
}

.nia2_radio_button {
	width: 20px;
	height: 20px ;
	margin: 0;
	margin-left: 5px ;
	padding: 0;
	opacity: 0;
}

.nia2_radio_button + label{
	display: inline-block;
	margin-left: -20px;
	padding-left: 25px;
	background: url('../../lib/img/radio.png') no-repeat 0 -20px;
	line-height: 20px;
	vertical-align: text-top;
}

.nia2_radio_button:checked + label {
	background-position : 0 0;
}

.nia2_radio_button:disabled + label {
	background-position : 0 -20px;
}

.nia2_radio_button:disabled:checked + label {
	background-position : 0 -40px;
}

.nia2_radio_label {
	font-size: 16px;
	font-weight: bold;
	margin-left: 10px ;
	margin-right: 5px ;
}

/* Accordion */
.nia2_accordion.active .nia2_accordion_top {
	color: #F16E00;
	background-image: url(../../lib/img/up.svg);
	vertical-align: center ;
}
.nia2_accordion_top:hover {
	color: #F16E00;
}

.nia2_accordion_top {
	cursor: pointer;
	font-weight: bold ;
	border-top : 1px solid #ccc ;
	background-image: url(../../lib/img/down.svg);
	background-size: 20px;
	background-repeat: no-repeat;
	background-position: right;
	display : block ;
	line-height: 30px;
	padding-right: 25px;
}
.nia2_accordion:last-child {
	border-bottom : 1px solid #ccc ;
}
.nia2_accordion_top .nia2_paragraph {
	margin-top: 5px ;
	display: inline-block;
}
.nia2_accordion_details_over {
	overflow: hidden;
}
.nia2_accordion_details_over {
	height: 0;
}
.nia2_accordion.active>.nia2_accordion_details_over {
	height: auto;
}
.nia2_accordion_details {
	max-height: 0;
	transition-duration: 0.1s;
	transition-property: max-height;
	transition-timing-function: ease-in-out;
}

.nia2_accordion.active .nia2_accordion_details {
	transition-duration: 0.5s;
	max-height: 1000px;
}

/* -------------------------------------------------------------- */
/* SubMenu template                                               */
/* -------------------------------------------------------------- */

ul.nia2_submenu {
	display: block;
	width: 100%;
	overflow: hidden;
	min-height: 10px;
	margin: 10px 0px;
	border-top: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	padding-left : 0px ;
}
ul.nia2_submenu li {
	display: inline-block;
	padding: 0px;
	margin: 0px;
	font-weight: bold ;
	font-size : 12px ;
	line-height : 30px ;
	color: black;
}
ul.nia2_submenu li a {
	text-decoration: none;
	display: inline-block;
	color: black;
	padding: 0px 10px;
	box-sizing: border-box;
}
ul.nia2_submenu li a:hover,
ul.nia2_submenu li.li_selected a  {
	color: #ff6600;
}
ul.nia2_submenu a.li_selected {
	color: #ff6600 !important ;
}

/** JS/CSS menu */

.nia2_menu_background {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 9996;
}
.nia2_menu {
	background-color:black;
	color: white;
	font-weight: bold;
	font-size: 14px;
	min-height: 30px;
	line-height: 30px;
	padding: 0 35px 0 35px;
	z-index: 9997;
}
.nia2_menu>.nia2_menu_list {
	display:inline-block;
}
.nia2_menu>.nia2_menu_list>.nia2_menu_name {
	background-color: black;
	color: white;
}
.nia2_menu .nia2_menu_list {
	position: relative;
	background-color: white;
	color: black;
	vertical-align: top;
	z-index: 9999;
}
.nia2_menu_name {
	background-color:white;
	color: black;
	padding : 0 10px 0 10px;
	cursor: pointer;
	white-space: nowrap;
}
.nia2_menu_list .nia2_menu_list .nia2_menu_name {
	padding-right: 25px;
}
.nia2_menu li {
	display: block;
	color: black;
	line-height: 28px;
	padding : 0 10px 0 10px;
}
.nia2_menu li:hover,
.nia2_menu_list .nia2_menu_name:hover {
	background-color: black;
	color: white;
}
.nia2_menu a {
	background-color: inherit;
	color: inherit;
	text-decoration: none;
	white-space: nowrap;
	display: inline-block;
	width: 100%;
	z-index: 10000;
	position: relative;
}
.nia2_menu ol {
	position: absolute;
	border : 2px solid black;
	list-style-type: none;
	padding: 5px 0px 5px 0px;
	margin: 0;
	display:inline-block;
	background-color: white;
	z-index: 10000;
}
.nia2_menu .nia2_menu_list .nia2_menu_list>ol {
	position: absolute;
	top: -5px ;
	left: 100%;
	display: inline-block;
}
.nia2_menu ol .nia2_menu_list .nia2_menu_name::after {
	content: ' ►';
	float: right;
	width: 0;
	position: relative;
	left: 5px;
}
.nia2_menu>li { /* direct links, level 1 only */
	display: inline-block;
	color: white;
	z-index: 9999;
	position: relative;
}

/** Full screen button */
#libFullscreenButton {
	position: absolute;
	top: 125px;
	right: 10px;
}

#libFullscreenButton.fullscreenmode {
	top: -5px;
	right: -30px;
	transform: rotate(180deg);
}

/** Tabs */
.nia2_tabs {
	display: flex;
	margin-bottom: 10px ;
	flex-wrap: wrap;
}

.page_body_content .nia2_tab a {
	color : black ;
	text-decoration: none ;
	font-size: 16px;
}

.standard .nia2_tab:hover a {
	color :white ;
}

.nia2_tab {
	font-weight: bold;
	padding-left: 26px ;
	padding-right: 26px ;
	padding-top: 11px ;
	padding-bottom: 11px ;
	white-space: nowrap;
}

.standard .nia2_tab_spacer:last-child {
	flex-grow: 1;
}

.standard .nia2_tab {
	border-bottom: 2px solid black ;
	padding-left: 21px ;
	padding-right: 21px ;
}

.standard .nia2_tab.current {
	border-top: 2px solid black ;
	border-left: 2px solid black ;
	border-right: 2px solid black ;
	border-bottom: none ;
	padding-left: 19px ;
	padding-right: 19px ;
	padding-top: 9px ;
	padding-bottom: 13px ;
}
.standard .nia2_tab_spacer {
	width : 10px ;
	display: inline-flex;
	border-bottom: 2px solid black ;
}
.light .nia2_tab {
	border-bottom: 1px solid #ccc;
}

.light .nia2_tab:hover a {
	color : #f16e00;
}

.standard .nia2_tab:hover {
	background-color : black;
	color : white ;
}

.light .nia2_tab.current {
	border-bottom: 4px solid #f16e00;
	padding-bottom: 8px ;
}

.light .nia2_tab.current a {
	color : #f16e00;
}

.nia2_tabs:first-of-type .nia2_tab a {
	font-size: 16px ;
}

.nia2_tabs .nia2_tab a {
	font-size: 14px ;
}

/* Forms */
.nia2_form {
	display: grid;
	grid-template-columns: auto auto;
	column-gap: 15px;
}

.nia2_form label.nia2_label {
	padding-top: 5px;
}

.nia2_form label .nia2_button_img {
	top: 3px;
}

.nia2_form p {
	font-size: 14px;
	padding-left: 5px;
	padding-right: 5px;
	margin: 11px 0px;
	min-height: 17px;
}

.nia2_form_section {
	grid-column: 1 / 3;
	margin-top: 14px;
	padding-bottom: 10px;
	font-size: 16px;
	color: #f16e00;
}

/* Spinner */
.nia2_spinner {
	display: flex;
	height: 40px;
	margin: 5px;
}

.nia2_spinner.inactive>button::after  {
	opacity: 0.3;
}

.nia2_spinner.inactive input,
.nia2_spinner.inactive button {
	color: #999;
	background-color: #eee;
	cursor: auto;
}


.nia2_spinner.small {
	height: 30px;
}

.nia2_spinner * {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border: none;
	border-top: 2px solid #CCC;
	border-bottom: 2px solid #CCC;
}

.nia2_spinner>input {
	height: 100%;
	padding: 0;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	-moz-appearance: textfield;
	font-family: inherit;
}

.nia2_spinner input::-webkit-inner-spin-button,
.nia2_spinner input::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.nia2_spinner>button {
	width: 40px;
	height: 100%;
	background: none;
	padding: 0;
}

.nia2_spinner.small>button {
	width: 30px;
}

.nia2_spinner:not(.inactive) button:hover {
	background-color: #000;
}
/*
.nia2_spinner.inactive button:hover {
	background-color: transparent;
}*/

.nia2_spinner:not(.inactive) button:active {
	background-color: #FF6600;
}

.nia2_spinner:not(.inactive) button:hover {
	background-color: #000;
}

.nia2_spinner button:active {
	background-color: #FF6600;
}

.nia2_spinner button::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	background-size: cover;
}

.nia2_spinner button.minus {
	border-left: 2px solid #CCC;
}
.nia2_spinner button.plus {
	border-right: 2px solid #CCC;
}

.nia2_spinner button.minus:active,
.nia2_spinner button.plus:active {
	border: 2px solid #FF6600;
}

.nia2_spinner button::after {
	background-size: 18px;
	background-repeat: no-repeat;
	background-position: center;
}

.nia2_spinner.small button::after {
	background-size: 12px;
}

.nia2_spinner button.minus::after {
	background-image: url(../../lib/img/minus.svg);
}

.nia2_spinner:not(.inactive) button.plus:hover,
.nia2_spinner:not(.inactive) button.minus:hover {
	border: 2px solid #000;
}

.nia2_spinner button.plus::after {
	background-image: url(../../lib/img/add.svg);
}

.nia2_spinner:not(.inactive) button:hover::after {
	filter: invert(100%);
}

.nia2_spinner:not(.inactive) input {
	cursor: text;
}

/* Drag and drop  */
#LibDraggingElementId {
	border: 2px dashed #888;
}

.nia2_draggable,
.nia2_draggable>.nia2_button_label { /* cursor move on button is not taken into account */
	cursor: move;
}

/* Hidden class used by lib to prevent from using display css property */
.displayed_page .nia2_hidden,
#pageBody .nia2_hidden {
	display:none !important; /* Exception: this style has to override other displays */
}

/* Page header */
.page_header .avatar .mms_img{
	height: 25px;
	width: 25px;
}

.ticketCountHeader,
.pendingTicketCountHeader {
	text-decoration: none;
	color:black;
	text-align: center;
}

.ticketCountHeader>img {
	filter:invert(100%);
}

@keyframes blink {
    0% {
        opacity:1;
    }
    50% {
        opacity:0.4;
    }
    100% {
        opacity:1;
    }
}

.pendingTicketCountHeader>img {
	animation: blink normal 1.8s infinite ease-in-out;
}

.ticketCountHeader>span,
.pendingTicketCountHeader>span {
	text-decoration: none;
	position: absolute;
	font-weight: bold;
	font-size: 12px;
	right: -2px;
	top: 2px;
	width: 25px;
	text-align: center;
}

.pendingTicketCountHeader>span {
	color: #fff;
}

/* ras status */
#ras-status-ok {
	display: none;
}

/* Maintenance */
.next-maintenance {
	color: white;
	float: right;
	position: relative;
	top: 20px;
	font-weight: bold;
	background-image: url(../../lib/img/warning_important_yellow.svg);
	background-size: 30px;
	background-repeat: no-repeat;
	padding-left: 35px;
	line-height: 30px;
}
