@charset "utf-8";
/* CSS Document */

/* 13.10.2026: room for the scrollbar is always kept. Without it the page got
   15px narrower whenever its content outgrew the window, and everything centred
   (the centre taskbar first of all) jumped by 7.5px — e.g. Ausmass vs LV. */
html { scrollbar-gutter:stable; }

:root {
	--bs_green_1: #6B9B62;
	--bs_red_1: #C90000;
	--bs_blue_1: #168DCB;
	--bs_black_1: #393939;
	--bs_grey_1: #4B4B4B;
	--bs_yellow_1: #FFC600;
	--bs_orange_1: #D97910;
}

img.preview {
    max-height: 210px;
    object-fit: cover;
}
img.preview-overview {
    border-radius: 8px 0px 0px 8px;
    border-right: 0.5px solid #E7E7E7;
    width: 100%;
    min-height: 100%;
    max-height: 104px;
    object-fit: cover;
}

/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* Div */
body {
	background-color: #EDEDED !important;

}
@media (min-width: 0px){
body {
	/*	zoom: 1.00; Other non-webkit browsers */
	/*	zoom: 100%;  Webkit browsers */
}
}
@media (min-width: 1000px){
body {
  /* 	zoom: 1.25;  Other non-webkit browsers */
  /*	zoom: 125%;   Webkit browsers */
}	
}
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* Geprüft */
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */




/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* Size */
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */

[hidden] { display: none !important; }

div {
  font-family: abel, sans-serif;
}

label{
	text-decoration: none;
	font-size: 20px;
	font-family: abel, sans-serif;
	color: #606060;
 -moz-hyphens: auto;
   -o-hyphens: auto;
   -webkit-hyphens: auto;
   -ms-hyphens: auto;
   hyphens: auto; 
}
a{
	font-size: 20px;
	font-family: abel, sans-serif;
	text-decoration: none;
	font-weight: normal;
	color: #606060;

 }

table{
	font-size: 20px;
	font-family: abel, sans-serif;
 }
tr{
	font-size: 20px;
	font-family: abel, sans-serif;
 }
td{
	font-size: 20px;
	font-family: abel, sans-serif;
 }
button {
	font-size: 20px;
	font-family: abel, sans-serif;
	text-decoration: none;
	font-weight: normal;
	display: inline-block;	
	cursor:pointer;
 }	
input{
	font-size: 20px;
	font-family: abel, sans-serif;
	text-decoration: none;
	font-weight: normal;
	display: inline-block;
 }

select{
	font-size: 20px;
	font-family: abel, sans-serif;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border: none;
}
select::placeholder{
	font-size: 16px;
	font-family: abel, sans-serif;
 }
textarea{
	font-size: 20px;
	font-family: abel, sans-serif;
	color: #606060;
 }
input[type="checkbox"][readonly], .readonly_checkbox {
  pointer-events: none;
}
input[type="text"][readonly] {
  pointer-events: none;
}
input[type="select"][readonly] {
  pointer-events: none;
}
select[readonly]{
    background: #eee;
    cursor:no-drop;
	pointer-events: none;
}

select[readonly] option{
    display:none;
	pointer-events: none;
}
/* Focus-Lock Klasse für Formular-Elemente */
.focus-lock {
    position: relative;
	
}

/* Icon oben rechts positionieren */
/*.focus-lock::after {
    content: '';
    position: absolute;
    top: 0px;
    right: 10px;
    width: 25px;
    height: 25px;
    background-image: url("../images/icon_api_1.png");	
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    pointer-events: none;
    z-index: 10;
}*/

/* Lock-Icon als echtes DOM-Element (kein Pseudo-Element, damit Microtip-Pfeile sichtbar bleiben) */
.focus-lock-icon {
    position: absolute;
    top: 0;
    right: 10px;
    height: 25px;
    width: 25px;
    background-image: url("../images/icon_api_1.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    pointer-events: none;
    z-index: 10;
}
td:has(textarea) .focus-lock-icon {
    right: 15px;
}
/* Für Input und Textarea */
input.focus-lock,
select.focus-lock:read-only {
    padding-right: 25px; /* Platz für das Icon schaffen */
	background-image: linear-gradient(45deg, #ffffff 18.75%, #fafafa 18.75%, #fafafa 50%, #ffffff 50%, #ffffff 68.75%, #fafafa 68.75%, #fafafa 100%);
	background-size: 11.31px 11.31px;
}
textarea.focus-lock:read-only {
    padding-right: 0px; /* Platz für das Icon schaffen */
	background-image: linear-gradient(45deg, #ffffff 18.75%, #fafafa 18.75%, #fafafa 50%, #ffffff 50%, #ffffff 68.75%, #fafafa 68.75%, #fafafa 100%);
	background-size: 11.31px 11.31px;
}
textarea.focus-lock:read-only:hover {
border: 1px solid #CDCCCC;
}
input[type="text"].focus-lock:read-only {
	background-image: linear-gradient(45deg, #ffffff 18.75%, #fafafa 18.75%, #fafafa 50%, #ffffff 50%, #ffffff 68.75%, #fafafa 68.75%, #fafafa 100%);
	background-size: 11.31px 11.31px;
	}
input[type="number"].focus-lock:read-only {
	background-image: linear-gradient(45deg, #ffffff 18.75%, #fafafa 18.75%, #fafafa 50%, #ffffff 50%, #ffffff 68.75%, #fafafa 68.75%, #fafafa 100%);
	background-size: 11.31px 11.31px;
}

/* Spezielle Anpassung für Checkboxes */
input[type="checkbox"].focus-lock {
    padding-right: 0;
}

input[type="checkbox"].focus-lock .focus-lock-icon {
    top: -5px;
    right: -25px;
}

/* Spezielle Anpassung für Radio Buttons */
input[type="radio"].focus-lock {
    padding-right: 0;
}

input[type="radio"].focus-lock .focus-lock-icon {
    top: -5px;
    right: -25px;
}

/* Für Select2 Dropdowns - Container Wrapper benötigt */
.focus-lock.select2-container .focus-lock-icon {
    top: 5px;
    right: 35px; /* Platz für Select2 Pfeil lassen */
}

/* Alternative: Wrapper-Div für komplexere Elemente */
.focus-lock-wrapper {
    position: relative;
    display: inline-block;
}

.focus-lock-wrapper::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 20px;
    height: 20px;
    background-image: url("../images/icon_api_1.png");	
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    pointer-events: none;
    z-index: 10;
}

.bs23_table_info  {
    border-radius: 5px;
    padding: 5px;
    width: 100%;
    border-width: 1px;
    border-style: dashed;
    text-align: left;
    margin-bottom: 5px;
	margin-top: 5px;
}
.bs23_table_info th {
    font-weight: bold;
    font-size: 22px;
}
.bs23_table_info td {
    font-weight: normal;
}
.bs23_table_info_red  {
    background-color: #FCE2DE; 
    border-color: #92383D;
}	
.bs23_table_info_red tfoot td  {
    background-color: #FDEEEF; 
    padding: 10px;
    border-radius: 5px;
}		
.bs23_table_info_red input  {
    border-color: #92383D;
}		
.bs23_table_info_red textarea  {
    border-color: #92383D;
}
.bs23_table_info_red label  {
    color: #92383D;
}	
.bs23_table_info_red a  {
    color: #92383D;
}	
.bs23_table_info_red button  {
    color: #92383D;
    border-color: #92383D;
    background-color: #92383D;
    color: #FFFFFF;
}	
.select2-container {
	font-size: 20px!important;
	font-family: abel, sans-serif!important;
	box-shadow: none;
	}
.bs23_popup_label_1 {
	font-size: 20px;
	color: #525252; 
}
.bs23_popup_title_1 {
	font-size: 26px;
	color: #323232; 
}
.bs23_popup_title_2 {
	font-size: 23px;
	color: #525252; 
}
.bs23_label_size_0{
	font-size: 12px;
 }
.bs23_label_size_1{
	font-size: 16px;
 }
.bs23_label_size_1 td{
	font-size: 16px;
 }
.bs23_label_size_1 label{
	font-size: 16px;
 }
.bs23_label_size_2{
	font-size: 18px;
 }
.bs23_label_size_2 td{
	font-size: 18px;
 }
.bs23_label_size_2 label{
	font-size: 18px;
 }
.bs23_label_size_3{
	font-size: 20px;
 }
.bs23_label_size_3 td{
	font-size: 20px;
 }
.bs23_label_size_3 label{
	font-size: 20px;
 }
.bs23_label_size_4{
	font-size: 23px;
 }
.bs23_label_size_4 td{
	font-size: 23px;
 }
.bs23_label_size_4 label{
	font-size: 23px;
 }
.bs23_label_size_5{
	font-size: 26px;
 }
.bs23_label_size_5 td{
	font-size: 26px;
 }
.bs23_label_size_5 label{
	font-size: 26px;
 }
.bs23_label_size_5 span{
	font-size: 26px;
 }

.bs23_input_size_1{
	font-size: 16px;
 }
.bs23_input_size_1::placeholder{
	font-size: 16px;
 }
.bs23_input_size_2{
	font-size: 18px;
 }
.bs23_input_size_2::placeholder{
	font-size: 18px;
 }
.bs23_input_size_3{
	font-size: 20px;
 }
.bs23_input_size_3::placeholder{
	font-size: 20px;
 }
.bs23_input_size_4{
	font-size: 23px;
 }
.bs23_input_size_4::placeholder{
	font-size: 23px;
 }
.bs23_input_size_5{
	font-size: 26px;
 }
.bs23_input_size_5::placeholder{
	font-size: 26px;
 }

.bs23_label_size_bsloader_1 {
	font-size: 31px!important;
 }
.bs23_frame_3_button_size{
	font-size: 20px;
 }
.bs23_switch_1{
	display: block;
	height: auto;
	border: 1px solid #FFFFFF;
	background-color: #eff5ef;
box-shadow: rgba(14, 63, 126, 0.06) 0px 0px 0px 1px, rgba(42, 51, 70, 0.03) 0px 1px 1px -0.5px, rgba(42, 51, 70, 0.04) 0px 2px 2px -1px, rgba(42, 51, 70, 0.04) 0px 3px 3px -1.5px, rgba(42, 51, 70, 0.03) 0px 5px 5px -2.5px, rgba(42, 51, 70, 0.03) 0px 10px 10px -5px, rgba(42, 51, 70, 0.03) 0px 24px 24px -8px;
	border-radius: 5px;
    color: #979797;
    background: white;
    text-decoration: none;
    padding: 2px 10px 2px 30px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    float: left;
    background-size: 30px 30px; /* explicitly set background size */
    background-repeat: no-repeat;
    background-position: left 0px center;
    margin-right: 3px;
}	
.bs23_switch_1:hover{
    background-color: rgba(254,255,237,1.00);
    border-color:#72AE74; 
    color: #72AE74;
    }	
.bs23_switch_1[activ]{
    /*background-color: rgba(254,255,237,1.00);*/
    border-color:#72AE74; 
    color: #72AE74;
    }	

.bs23_icon_size_1{
	background-size: 20px 20px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 20px;
	height: 20px;
	border: none;
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 0px;
	padding-top:0px;
 }
.bs23_icon_size_1:hover{
	background-color: transparent;
 }
.bs23_icon_size_2{
	background-size: 26px 26px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 26px;
	height: 26px;
	border: none;
	padding-left: 13px;
	padding-right: 13px;
	padding-bottom: 0px;
	padding-top:0px;
 }
.bs23_icon_size_3{
	background-size: 30px 30px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 30px;
	height: 30px;
	border: none;
	padding-left: 15px;
	padding-right: 15px;
	padding-bottom: 0px;
	padding-top:0px;
 }
.bs23_icon_size_4{
	background-size: 36px 36px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 36px;
	height: 36px;
	border: none;
	padding-left: 18px;
	padding-right: 18px;
	padding-bottom: 0px;
	padding-top:0px;
 }
.bs23_icon_size_5{
	background-size: 40px 40px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 40px;
	height: 40px;
	border: none;
	padding-left: 20px;
	padding-right: 20px;
	padding-bottom: 0px;
	padding-top:0px;
 }
.bs23_select2_box_1 td:nth-child(1){
	padding-right: 10px;
	min-width: 40px;
 }
.bs23_select2_box_1 img{
	width: 40px!important;
	height: 40px!important;
	aspect-ratio: 1 / 1;
 }
.bs23_icon_check_1{
	background-image: url("../images/checkbox_3k.svg");	
	background-position: center;
 }
.bs23_icon_add_1{
	background-color: rgba(182,182,182,1.00); 
	border-radius: 3px; 
	background-size: 60%; 
	background-image: url("../images/button_plus_2c.svg");	
	background-position: center;
 }
.bs23_icon_add_1:hover{
	background-color: #72AE74;
 }
.bs23_icon_remove_1{
	background-color: rgba(182,182,182,1.00); 
	border-radius: 3px; 
	background-size: 60%; 
	background-image: url("../images/button_minus_2c.svg");	
	background-position: center;
 }
.bs23_icon_remove_1:hover{
	background-color: #72AE74;
 }
.bs23_label_frame_1_title_1 label{
	font-size: 30px;
	color: #323232; 
 }
.bs23_label_frame_1_title_2 label{
	font-size: 23px;
	color: #525252; 
 }
.bs23_label_white_1 {
	color: #323232; 
	font-weight:500;
}
.bs23_label_white_1 label {
	color: #323232; 
	font-weight:500;
}
.bs23_label_black_1 {
	color: #FFFFFF; 
}
.bs23_label_black_1 label {
	color: #FFFFFF; 
}
.bs23_label_grey_1 {
	color: #525252; 
	border-color: #525252; 
}
.bs23_label_grey_1 label {
	color: #525252; 
}
.bs23_label_grey_2 {
	color: #929292; 
}
.bs23_label_orange_1 {
	color: #D97910; 
}
.bs23_label_blue_1 {
	color: #3F8CB3; 
}
.bs23_label_dark_1 {
	text-decoration: none;
	color: #FFFFFF!important;
    background:#393939;
	border-left:5px solid #393939;
	border-right: 5px solid #393939;
	border-bottom: 0px solid #393939;
	border-top: 0px solid #393939;
	border-radius: 1px;
	padding: 0px;	
}
.bs23_label_darkorange_1 {
	color: #B1712E;
}
.bs23_label_green_1 {
	color: var(--bs_green_1);
}
.bs23_label_green_2 {
	color: #72AE74; 
}
.bs23_label_red_1 {
	color: #FD0000; 
}
.bs23_label_red_2 {
	color: #A05555; 
}
.bs23_label_marked{
	color: #232323!important;
	}	


/* 1# Datapicker Hintergrund */
.xdsoft_datetimepicker {
	/*box-shadow: 0 5px 15px -5px rgba(0, 0, 0, 0.506);*/
	border-bottom: 0px solid #bbb!important;
	border-left: 0px solid #ccc!important;
	border-right: 0px solid #ccc!important;
	border-top: 0px solid #ccc!important;
	color: red;
	border-radius: 10px;
	padding: 0px;
	padding-left: 0;
	padding-top: 0px;
	position: absolute;
	z-index: 9999;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: none;
	background: white!important;
	margin-top: 5px;
}
/* 2# Datapicker Felder */
.xdsoft_datetimepicker .xdsoft_calendar td, .xdsoft_datetimepicker .xdsoft_calendar th {
	font-family: abel, sans-serif!important;
	font-size: 20px!important;	
	background: white!important;
	border-color: white;
	color: blue;
}

/* 2# Datapicker Felder - hover */
.xdsoft_datetimepicker .xdsoft_calendar td:hover, .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div:hover{
	background: #323232!important;
}

/* 3# Zeitauswahl rechts */
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div {
	background: rgba(255,255,255,1.00)!important;
	color: black;
	border: 1px solid white;
}
/* 3# Zeitauswahl rechts */
.xdsoft_time_box {
	border-color:#ccc!important; 
}
/* 3# Zeitauswahl rechts - hover*/
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div:hover{
	background: #323232!important;
	color: rgba(255,255,255,1.00);
}
/* 4# Scrollbar rechts (Background) */
.xdsoft_scrollbar {
	display: none;
    height: 0px;
    margin-top: 0px;
	background: #323232!important;
}

/* Allgemeine Schrift (Label) */
.xdsoft_datetimepicker .xdsoft_label {
	font-family: abel, sans-serif!important;
	font-size: 20px!important;	
	color: #323232;
}
/* Allgemeine Schrift disabled (Label) */
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_other_month, .xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_disabled, .xdsoft_datetimepicker .xdsoft_time_box >div >div.xdsoft_disabled {
	color: #C6C6C6;
}
/* Generelle Auswahl */
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_default, .xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current, .xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div.xdsoft_current {
	box-shadow:none;
	background: #323232!important;
	color: rgba(255,255,255,1.00);
	font-weight: normal;
}
.xdsoft_time_variant {
    border:none;
    }
.xdsoft_datepicker {
   	width: 300px !important; /*adjust accordingly*/
    }
.xdsoft_calendar table, .xdsoft_time_box{
    height: 250px !important;/*adjust accordingly*/
}

.xdsoft_datetimepicker .xdsoft_calendar td > div {
    text-align: center;
}
.xdsoft_datetimepicker .xdsoft_calendar td, .xdsoft_datetimepicker .xdsoft_calendar th {
		color: #323232;
}
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div {
	font-size: 20px!important;		
	}
.bs23_button_size_1{
	font-size: 14px;
	border-style: solid;
	border-left-width: 5px;
	border-right-width: 5px;
	border-bottom-width: 0px;
	border-top-width: 0px;
	border-radius: 2px;
	margin-bottom: 5px;
	margin-top: 0px;
	padding: 0px;
	display: inline-block;
  	width: max-content;
 }
.bs23_button_size_2 {
	font-size: 16px;
	border-style: solid;
	border-left-width: 10px;
	border-right-width: 10px;
	border-bottom-width: 3px;
	border-top-width: 3px;
	border-radius: 2px;
	margin-bottom: 5px;
	margin-top: 5px;
	padding: 0px;
	display: inline-block;
  	width: max-content;

}
.bs23_button_size_3{
	font-size: 18px;
	border-style: solid;
	border-left-width: 10px;
	border-right-width: 10px;
	border-bottom-width: 3px;
	border-top-width: 3px;
	border-radius: 3px;
	margin-bottom: 5px;
	margin-top: 5px;
	padding: 0px;
	display: inline-block;
  	width: max-content;
 }
.bs23_button_size_4{
	font-size: 20px;
	border-style: solid;
	border-left-width: 10px;
	border-right-width: 10px;
	border-bottom-width: 3px;
	border-top-width: 3px;
	margin-bottom: 5px;
	margin-top: 5px;
	padding: 0px;
	border-radius: 3px;
	display: inline-block;
  	width: max-content;
 }
.bs23_button_size_5[type=submit]{
	font-size: 23px;
	border-style: solid;
	border-left-width: 10px;
	border-right-width: 10px;
	border-bottom-width: 3px;
	border-top-width: 3px;
	margin-bottom: 5px;
	margin-top: 5px;
	padding: 0px;
	border-radius: 3px;
 }
.bs23_button_size_5 {
	font-size: 23px;
	border-style: solid;
	border-left-width: 10px;
	border-right-width: 10px;
	border-bottom-width: 3px;
	border-top-width: 3px;
	margin-bottom: 5px;
	margin-top: 5px;
	padding: 0px;
	border-radius: 3px;
	display: inline-block;
  	width: max-content;
 }
.bs23_button_size_6[type=submit]{
	font-size: 23px;
	border-style: solid;
	border-left-width: 15px;
	border-right-width: 15px;
	border-bottom-width: 6px;
	border-top-width: 6px;
	margin-bottom: 8px;
	margin-top: 8px;
	padding: 0px;
	border-radius: 3px;
 }
.bs23_button_size_6 {
	font-size: 23px;
	border-style: solid;
	border-left-width: 15px;
	border-right-width: 15px;
	border-bottom-width: 6px;
	border-top-width: 6px;
	margin-bottom: 8px;
	margin-top: 8px;
	padding: 0px;
	border-radius: 3px;
	display: inline-block;
  	width: max-content;
 }
.bs23_button_help_2 {
	}
.bs23_button_help_3 {
	}

.bs23_label_p {
	white-space: nowrap; 
	overflow: hidden; 
	text-overflow: ellipsis; 
	margin: 0px;
	}
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
.bs23_frame_0{
	position: absolute;
	top:0px;
	width: 100%;
	right: 50%;
	padding-left: 10px;
	box-sizing: border-box;
 	}

.bs23_frame_1{
	padding: 0px 5px 5px 0px;
	margin-bottom: 5px;
	position: relative;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	border-color: transparent;
 	}
.bs23_frame_1_project{
	padding: 0px 5px 5px 0px;
	margin-bottom: 5px;
	position: relative;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	border-color: transparent;
 	}
.bs23_frame_1_logo{
	float: right;
	background-color: rgba(255,255,255,1.00);
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
	border-radius: 10px;
	padding: 5px;
	margin-right: 30px;
	margin-left: 10px;
	margin-bottom: 10px;
 	}

.bs23_frame_1_cancelled{
	padding: 5px 5px 5px 5px;
	background-color:  #502A2B!important;
	border-radius: 5px!important;
 	}
.bs23_frame_1_cancelled label{
	color:white!important;
 	}

.bs23_frame_2{
	padding: 10px 10px 30px 10px;
	background-color: rgba(255,255,255,1.00);
	margin-bottom: 5px;
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
	position: relative;
	border-radius: 10px;
 	}
.bs23_frame_2_top{
	border-bottom-left-radius: 0px!important;
	border-bottom-right-radius: 0px!important;
	border-top-left-radius: 10px!important;
	border-top-right-radius: 10px!important;
 	}
.bs23_frame_2_middle{
	border-bottom-left-radius: 0px!important;
	border-bottom-right-radius: 0px!important;
	border-top-left-radius: 0px!important;
	border-top-right-radius: 0px!important;
 	}
.bs23_frame_2_bottom{
	border-bottom-left-radius: 10px!important;
	border-bottom-right-radius: 10px!important;
	border-top-left-radius: 0px!important;
	border-top-right-radius: 0px!important;
 	}

.bs23_frame_2b{
	padding: 10px 10px 30px 10px;
	background-color: rgba(237,237,237,1.00);
	margin-bottom: 5px;
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
	position: relative;
	border-radius: 10px;
 	}
.bs23_frame_2c{
	padding: 10px 0px 10px 0px;
	margin-bottom: 5px;
	position: relative;
 	}
.bs23_frame_2d{
	padding: 10px 10px 10px 10px;
	background-color: rgba(255,255,255,1.00);
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
	position: relative;
	border-radius: 10px;
 	}
.bs23_frame_2_menu{
	background-color: rgba(255,255,255,1.00);
	margin-bottom: 5px;
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
	position: relative;
	border-radius: 10px;
	min-height: 40px;
 	}
.bs23_frame_2_menu div{
	float: left; 
	height: 40px; 
	width: auto; 
	padding-top: 3px;
	padding-left: 20px; 
	padding-right: 20px; 
	vertical-align:middle;
	border-right: 2px solid rgba(207,207,207,1.00);
 	}
.bs23_frame_2_menu div[activ]{
	background-color: rgba(103,103,103,1.00); 
	border-right: 2px solid  rgba(103,103,103,1.00); 
 	}
.bs23_frame_2_menu div:hover{
	background-color: rgba(74,74,74,1.00); 
	border-right: 2px solid rgba(74,74,74,1.00); 
 	}
.bs23_frame_2_menu div[activ] a{
	color: white;
 	}
.bs23_frame_2_menu div:hover a{
	color: white;
 	}
.bs23_frame_2_menu div:nth-child(1){
	border-top-left-radius: 10px;
	border-bottom-left-radius: 10px;
	
 	}
.bs23_menu_icon_0{
	float: right;
	margin-right: 5px;
	margin-bottom: 3px;
	border: 1px dotted grey;
	color: #606060;
	padding: 5px;
	font-weight: bold;
}
.bs23_menu_icon_0:hover{
	background-color: #585858; 
	color: white;
	border: 1px dotted grey;
}	
.bs23_menu_icon_0 img{
	height: 30px; 
	width: 30px;
}
.bs23_menu_icon_0d{
	float: right;
	margin-right: 5px;
	margin-bottom: 3px;
	border: 1px dotted grey;
	color: #606060;
	padding: 5px;
	font-weight: bold;
}
.bs23_menu_icon_0d img{
	height: 30px; 
	width: 30px;
}

.bs23_menu_icon_menu_1 img{
	content:url("/images/icon_menu_1.png");
}
.bs23_menu_icon_menu_1:hover > img{
	content:url("/images/icon_menu_1d.png");
}
.bs23_menu_icon_menu_1 img:hover{
	content:url("/images/icon_menu_1d.png");
}
.bs23_navi_1{
	float: left; 
	width: calc(20% - 4px); 
	height: 100%; 
}

.bs23_navi_2{
	float: left; 
	width: calc( 100% - 20px); 
	height: 100%; 
	text-align: center;
}
.bs23_navi_2 p{
	color: #606060;
	font-size: 15px;
}
.bs23_navi_2 p:hover{
	font-weight: bold;
}
.bs23_navi_2 p[activ] {
	font-weight: bold;
}
.bs23_navi_3{
	float: left; 
	width: 20px; 
	height: 100%; 
	background-image: url("../images/icon_nav_1.png");
	background-size: auto 100% ;
	background-repeat: no-repeat;
	background-color: transparent;
	background-position: right center;
}
.bs23_frame_3{
	padding: 10px 5px 10px 10px;
	margin-bottom: 80px;
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
	position: relative;
	min-height: 100px;
	background-color: rgba(255,255,255,1.00);
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;	
 	}
.bs23_frame_3b{
	width: 100%;
	position: relative;
	min-height: 60px;
 	}
.bs23_frame_3b div{
	position: absolute;
	right: 0px;
	bottom: 0px;
 	}
.bs23_frame_3c{
	padding: 10px 5px 10px 10px;
	margin-bottom: 80px;
	border-radius: 10px;
	position: relative;
	min-height: 100px;
	background-color: rgba(255,255,255,1.00);
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;	
 	}
.bs23_frame_1_close_1{
	position: absolute;
	top:5px;
	right: 5px;
	z-index: 60;

 	}
.bs23_box_close_1{
	position: absolute; 
	right: 5px; 
	top: 5px;  

}
.bs23_button_close_1 {
	background-image: url("../images/button_close_1.svg");	
	/*filter: drop-shadow(0px 0px 8px #7E859A);*/
	z-index: 50;
	}
.bs23_button_close_1:hover{
	background-image: url("../images/button_close_2b.svg");
	/*filter: drop-shadow(0px 0px 8px #918A82);*/
	}
.bs23_button_close_1d {
	background-image: url("../images/button_close_1e.svg");	
	}
.bs23_button_close_2 {
	background-image: url("../images/button_close_1a.svg");	
	}
.bs23_button_close_2:hover{
	background-image: url("../images/button_close_2b.svg");
	}
.bs23_button_close_3 {
	background-image: url("../images/button_close_1e.svg");	
	}
.bs23_button_close_3:hover{
	background-image: url("../images/button_close_2b.svg");
	}
.bs23_button_close_4 {
	background-image: url("../images/button_close_1a.svg");	
	}
.bs23_button_close_4:hover{
	background-image: url("../images/button_close_2b.svg");
	}
.bs23_button_close_5 {
	background-image: url("../images/button_close_1a.svg");	
	}
.bs23_button_close_5:hover{
	background-image: url("../images/button_close_1c.svg");
	}
.bs23_button_close_6 {
	background-image: url("../images/button_close_6.svg");	
	}
.bs23_button_close_6:hover {
	background-image: url("../images/button_close_6b.svg");	
	}
.bs23_button_close_7 {
	background-image: url("../images/button_close_7.svg");	
	}
.bs23_button_close_7:hover {
	background-image: url("../images/button_close_7b.svg");	
	}
.bs23_button_close_8 {
	background-image: url("../images/button_close_1c.svg");	
	}
.bs23_button_close_8:hover{
	background-image: url("../images/button_close_1c.svg");
	}
.bs23_button_refresh_1 {
	background-image: url("../images/button_print_reload_1.svg");	
	}
.bs_button_info_1 {
	background-image: url("../images/button_info_4.svg");
	background-size: 26px 26px;
	background-repeat: no-repeat;
	background-color: transparent;
	background-position: center center;
	border: none;
	height: 26px;
	width: 26px;
	padding: 13px;
	margin: 50px 5px 5px 5px;
	}

/* frame 1 - Menu */
/* ---------------------- */
.bs23_box_frame_1_div{
	position: absolute; 
	right: 0px; 
	bottom: 0px; 
	text-align: right;
 	}
.bs23_box_frame_1_menu{
	width: auto;
	border-collapse: collapse;
	z-index: 99;
 	}
.bs23_box_frame_1_menu input{
	color: #343434; 
	background-color: transparent;
	border: none;
	border-radius: 3px;
}
.bs23_box_frame_1_menu input:hover{
	color: #FFFFFF;
	background-color: #343434;
}

.bs23_box_frame_1_menu a{
	color: #343434;
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 2px;
	padding-top: 2px;
	margin-left: 2px;
	margin-right: 5px;
	border: 1px solid transparent;
 	}
.bs23_box_frame_1_menu a:hover{
	border-left: 0px solid #494c51;
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 2px;
	padding-top: 2px;
	color: #FFFFFF;
	background-color: #343434;
	border: 1px solid #343434;
	border-radius: 3px;
 	}
.bs23_box_frame_1_menu a[readonly] {
	background-color: rgba(255,255,255,0.00);
	color: #848484;
 	}
.bs23_box_frame_1_menu a[readonly]:hover {
	border: 1px solid rgba(255,255,255,0.00);
 	}
.bs23_box_frame_1_menu a[activ] {
	border-left: 0px solid #494c51;
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 2px;
	padding-top: 2px;
	color: #FFFFFF;
	background-color: #686868;
	border: 1px solid #686868;
	border-radius: 3px;

 	}
.bs23_box_frame_1_menu a[help] {
	text-align: center;
  	background-color: #80AE83; 
	color: #FFFFFF;
	border: 1px solid transparent;
	text-decoration: none;
	border-radius: 3px;
	font-size: 14px;
 	}
.bs23_box_frame_1_menu a[help-disabled] {
	text-align: center;
  	background-color: #AFAFAF; 
	color: #FFFFFF;
	border: 1px solid transparent;
	text-decoration: none;
	border-radius: 3px;
	font-size: 14px;
 	}
.bs23_box_frame_1_menu a[help]:hover {
  	background-color: #5E9161; 
	color: #FFFFFF;
 	}
.bs23_box_frame_1_menu div[help] {
	border-left: 1px solid rgba(159,192,159,1.00);
	padding-left: 10px;
	margin-left: 5px;
	display: flex; 
	flex-direction: column; 
	justify-content:center;
 	}
.bs23_box_frame_1_menu a[marked] {
	text-align: center;
  	background-color: #8096AE; 
	color: #FFFFFF;
	border: 1px solid transparent;
	text-decoration: none;
	border-radius: 3px;
 	}
.bs23_box_frame_1_menu a[marked]:hover {
  	background-color: #6381A3; 
 	}
.bs23_box_frame_1_menu a[support] {
	text-align: center;
  	background-color: #4F9BCD; 
	color: #FFFFFF;
	border: 1px solid transparent;
	text-decoration: none;
	border-radius: 3px;
 	}
.bs23_box_frame_1_menu a[support]:hover {
  	background-color: #4390C3; 
 	}
.bs23_box_frame_1_menu td{
	border-left: 0px solid #494c51;
	color: #FF931E;
 	}

.bs23_box_frame_1_menu td:hover{
	color: #FFFFFF;
 	}
.bs23_box_frame_1_menu td:nth-last-child(1){
	padding-left: 0px;
	padding-right: 10px;
 	}
.bs23_box_frame_1_menu td:nth-last-child(1) a{
	color: #43A343;
	font-weight: bold; 
 	}
.bs23_box_frame_1_menu td:nth-last-child(1):hover a{
	color: #B5EEB5;
	font-weight: bold; 
 	}
.bs23_box_frame_1_menu_inactiv{
	color: #8E8E8E!important;
 	}
.bs23_box_frame_1_menu_activ{
	color: #3B3B3B!important;
	font-weight: bold;
 	}
.bs23_box_frame_1_menu_activ:hover{
	color: #FFFFFF!important;
	font-weight: normal;
	
 	}
.bs23_box_frame_1_menu_red{
	color: #FFFFFF!important;
	background-color: #543333;
	padding-left: 15px;
	padding-right: 15px;
	padding-bottom: 1px;
	padding-top: 1px;
	border-radius: 3px;
 	}
.bs23_box_frame_1_menu_red:hover{
	color: #FFFFFF!important;
	background-color: #781F1F;
 	}

.bs23_box_frame_1{
	width: 100%;
	padding-bottom: 10px;
 	}
.bs23_box_frame_1_image{
	height: 70px;
	width: 100px;
	background-size: 100%;
	border-radius: 7px; 
	margin: 0px;
	padding: 0px;
 	}
.bs23_box_frame_1_project{
	width: auto;
	height: auto;
	margin: 0px;
	background-color: rgba(255,255,255,1.00);
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
	border-radius: 10px;
 	}
.bs23_box_frame_1_project td{
	padding-left: 0px;
	padding-top: 0px;
	padding-bottom: 0px;
	padding-right: 10px;
 	}

@media (min-width: 0px){	
	.bs23_box_frame_1_project td:nth-child(1){
		display: none;
 	}
	.bs23_box_frame_1_project td{
		padding-left: 10px;
		padding-top: 5px;
		padding-bottom: 5px;
		padding-right: 10px;
		}
	.bs23_text_0_show{
		display: initial;
		}
	.bs23_text_400_show{
		display: none;
		}
}
@media (min-width: 400px){
	.bs23_box_frame_1_project td:nth-child(1){
		display: inline-table;
 	}
	.bs23_box_frame_1_project td{
		padding-left: 0px;
		padding-top: 0px;
		padding-bottom: 0px;
		padding-right: 10px;
		}	
	.bs23_text_400_show{
		display: initial;
		}
	.bs23_text_0_show{
		display: none;
		}	
}	


.bs23_box_frame_1_project_2{
	width: auto;
	height: auto;
	margin: 0px;
	background-color: rgba(255,255,255,1.00);
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
	border-radius: 10px;
	padding: 5px;
	margin-left: 10px;
 	}
.bs23_box_frame_1_project_2 td{
	padding-left: 0px;
	padding-top: 0px;
	padding-bottom: 0px;
	padding-right: 0px;
 	}


.bs23_box_frame_1 td:nth-child(1){
	width: 300px;
 	}
.bs23_box_frame_1 tr:nth-child(1) td{
	padding-bottom: 0px;
	padding-top: 0px;
 	}
.bs23_box_frame_1 tr:nth-child(2) td{
	padding-bottom: 5px;
	padding-top: 5px;
 	}
.bs23_box_frame_1 tr:nth-last-child(1) td{
	padding-bottom: 0px;
	padding-top: 5px;
	border-top:1px solid rgba(71,71,71,1.00);
 	}

.bs_box_frame_2_menu_space{
	position: relative; 
	width: 100%;
	margin-bottom: 30px;
 	}
.bs_box_frame_2_menu_div{
	position: relative; 
	left: 0px; 
	top: 0px; 
	text-align: right; 
	width: 100%;
	margin-bottom: 0px;
 	}
.bs_box_frame_2_menu{
	width: auto;
	border-collapse: collapse;
 	}
.bs_box_frame_2_menu a{
	color: #323232;
 	}
.bs_box_frame_2_menu a:hover{
	color: #FFFFFF;
 	}
.bs_box_frame_2_menu td:hover{
	color: #FFFFFF;
 	}
.bs_box_frame_2_menu div{
	background-color: #FFFFFF;
	padding-left:10px;
	padding-right: 10px;
	padding-top: 2px;
	padding-bottom: 2px;
	/*box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;*/
	margin-bottom: 10px;
	border: 1px solid rgba(207,207,207,1.00);
 	}
.bs_box_frame_2_menu div:hover{
	background-color: #93C795;
	color: #FFFFFF;
 	}
.bs_box_frame_2_menu td:first-child div{
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
 	}
.bs_box_frame_2_menu td:last-child div{
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
 	}
.bs_box_frame_2_menu_activ a{
	color: #FFFFFF!important;
 	}
.bs_box_frame_2_menu_activ{
	background-color: #686868!important;
 	}
.bs_box_frame_2_menu_inactiv a{
	color: #929292!important;
 	}
.bs_box_frame_3_menu_div{
	position: absolute;
	right: 0px;
	bottom: 0px;
	padding: 10px 10px 10px 10px;
	width: calc(100%);
 	}
.bs_box_frame_3_menu{
	width: 100%;
 	}
.bs_box_frame_3_menu td:nth-child(1){
	text-align: left;
 	}
.bs_box_frame_3_menu td:nth-last-child(1){
	text-align: right;
 	}
.bs_box_frame_3_menu{
	min-height: 40px;
 	}


/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* Buttons */
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */





.bs23_frame_3_button_right {
	border-bottom-left-radius: 2px;
	border-top-left-radius: 2px;
	border-bottom-right-radius: 5px;
	border-top-right-radius: 2px;
	}
.bs23_frame_3_button_left {
	border-bottom-left-radius: 5px;
	border-top-left-radius: 2px;
	border-bottom-right-radius: 2px;
	border-top-right-radius: 2px;
	}
.bs23_frame_3_button_1 {
	text-align: center;
	text-decoration: none;
	color: #FFFFFF;
    background:#1A6B95;
	border-left: 18px solid #1A6B95;
	border-right: 18px solid #1A6B95;
	border-bottom: 6px solid #1A6B95;
	border-top: 6px solid #1A6B95;
	margin-bottom: 0px;
	padding: 0px;
	}

.bs23_frame_3_button_1:hover{
  	background-color: #18648B; 
	border-color:#18648B; 
	box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
	color: #FFFFFF;
	}
.bs23_frame_3_button_1:disabled {
	min-width: 100px;
	text-align: center;
	color: #FFFFFF;
    background:#393939;
	border-left:18px solid #393939;
	border-right: 18px solid #393939;
	border-bottom: 6px solid #393939;
	border-top: 6px solid #393939;
	margin-bottom: 5px;
	text-decoration: none;
	padding: 0px;
	}
.bs23_frame_3_button_1_red {
	min-width: 100px;
	text-align: center;
	font-family: abel, sans-serif;
	text-decoration: none;
	color: #FFFFFF;
    background:#9B6262;
	border-left: 18px solid #9B6262;
	border-right: 18px solid #9B6262;
	border-bottom: 6px solid #9B6262;
	border-top: 6px solid #9B6262;
	margin-bottom: 0px;
	padding: 0px;
	}
.bs23_frame_3_button_1_red:hover{
  	background-color: #B48181; 
	border-color:#B48181; 
	box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
	color: #FFFFFF;
	}
.bs23_frame_3_button_1_green {
	min-width: 100px;
	text-align: center;
	font-family: abel, sans-serif;
	text-decoration: none;
	color: #FFFFFF;
    background:#6B9B62;
	border-left: 18px solid #6B9B62;
	border-right: 18px solid #6B9B62;
	border-bottom: 6px solid #6B9B62;
	border-top: 6px solid #6B9B62;
	margin-bottom: 0px;
	padding: 0px;
	}
.bs23_frame_3_button_1_green:hover{
  	background-color: #77B76B; 
	border-color:#77B76B; 
	box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
	color: #FFFFFF;
}
.bs23_frame_3_button_1_disabled {
	min-width: 100px;
	text-align: center;
	font-family: abel, sans-serif;
	text-decoration: none;
	color: #FFFFFF;
	background-color: #9A9A9A;
	background-image: repeating-linear-gradient(
		45deg,
		rgba(255,255,255,0.20) 0px,
		rgba(255,255,255,0.20) 6px,
		transparent 6px,
		transparent 12px
	);
	border: 0;
	padding: 6px 18px;
	margin-bottom: 0px;
	cursor: not-allowed;
	opacity: 0.85;
	}
.bs23_frame_3_button_1_disabled:hover{
	background-color: #9A9A9A;
	box-shadow: none;
	color: #FFFFFF;
	cursor: not-allowed;
}
.bs23_frame_3_button_2 {
	text-align: center;
	font-family: abel, sans-serif;
	text-decoration: none;
	color: #FFFFFF;
    background:#393939;
	border-left: 18px solid #393939;
	border-right: 18px solid #393939;
	border-bottom: 6px solid #393939;
	border-top: 6px solid #393939;
	margin-bottom: 0px;
	padding: 0px;
	
	}

.bs23_frame_3_button_2:hover{
  	background-color: #343434; 
	border-color:#343434; 
	box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
	color: #FFFFFF;
	}

.bs23_button_blue_1 {
	text-align: center;
	color: #FFFFFF;
    background:#168DCB;
	border-color:#168DCB;
	text-decoration: none;
	}
.bs23_button_blue_1:hover{
  	background-color: #37A9E5; 
	border-color:#37A9E5; 
	}
.bs23_button_blue_1:disabled {
	color: #FFFFFF;
    background:#393939;
	border-color:#393939;	
	}
.bs23_button_orange_1 {
	text-align: center;
	color: #FFFFFF;
    background:#FF931E;
	border-color:#FF931E;
	text-decoration: none;
	}
.bs23_button_orange_1:hover{
  	background-color: #DB9B56; 
	border-color:#DB9B56; 
	color: #FFFFFF;
	}
.bs23_button_orange_1:disabled {
	color: #FFFFFF;
    background:#393939;
	border-color:#393939;	
	}
.bs23_button_orange_1d {
	text-align: center;
	color: #FFFFFF;
    background:#FF931E;
	border-color:#FF931E;
	text-decoration: none;
	}
.bs23_button_green_1 {
	text-align: center;
	color: #FFFFFF;
    background:var(--bs_green_1);
	border-color:var(--bs_green_1);
	text-decoration: none;
	}
.bs23_button_green_1:hover{
	color: #FFFFFF;
  	background-color: #5a9a5c;
	border-color:#5a9a5c;
	}
.bs23_button_green_1:disabled {
	color: #FFFFFF;
    background:#393939;
	border-color:#393939;	
	}
.bs23_button_green_1d {
	color: #FFFFFF;
    background:#393939;
	border-color:#393939;	
	}

.bs23_button_green_2 {
	color: #FFFFFF;
    background:#72AE74;
	border-color:#72AE74;	
	}
.bs23_button_green_3 {
	text-align: center;
	color: #72AE74;
    background:rgba(255,255,255,1.00);
	border:1px dashed #72AE74;
	padding: 1px 5px 1px 5px;
	border-radius: 3px;
	text-decoration: none;
	}
.bs23_button_green_3:hover{
  	background-color: #72AE74;
	color: white;
	border:1px solid #72AE74;
	}
.bs23_button_green_4 {
	text-align: center;
	color: #72AE74;
    background:#eef5ef;
	border:1px dashed #72AE74;
	padding: 1px 5px 1px 5px;
	border-radius: 3px;
	text-decoration: none;
	}
.bs23_button_green_4:hover{
  	background-color: #72AE74;
	color: white;
	border:1px solid #72AE74;
	}
.bs23_button_black_1 {
	text-align: center;
	color: #FFFFFF;
    background:#393939;
	border-color:#393939;
	text-decoration: none;
	}
.bs23_button_black_1:hover{
  	background-color: #72AE74;
	border-color:#72AE74;
	}

.bs23_button_help_1 {
	text-align: center;
	color: #77B36B;
    background:none;
	border-color: rgba(0,0,0,0.00);
	text-decoration: none;
	}
.bs23_button_help_1:hover{
	color: #FFFFFF;
  	background-color: #77B76B; 
	border-color:#77B76B; 
	}
.bs23_button_red_1 {
	text-align: center;
	color: #FFFFFF;
    background:#9B6262;
	border-color:#9B6262;
	text-decoration: none;
	}
.bs23_button_red_1:hover{
  	background-color: #B48181; 
	border-color:#B48181; 
	}
.bs23_button_red_1:disabled {
	color: #FFFFFF;
    background:#393939;
	border-color:#393939;	
	}
.bs23_button_red_1d {
	color: #FFFFFF;
    background:#393939;
	border-color:#393939;
	}
.bs23_button_red_2 {
	text-align: center;
	color: #A05555;
    background:rgba(255,255,255,1.00);
	border:1px solid #A05555;
	padding: 1px 5px 1px 5px;
	border-radius: 3px;
	text-decoration: none;
	}
.bs23_button_red_2:hover{
  	background-color: #585858;
	color: white;
	border:1px solid #585858;
	}
.bs23_button_red_3 {
	text-align: center;
	color: #A05555;
    background:rgba(255,255,255,1.00);
	border:1px dashed #A05555;
	padding: 1px 5px 1px 5px;
	border-radius: 3px;
	text-decoration: none;
	}
.bs23_button_red_3:hover{
  	background-color: #A05555;
	color: white;
	border:1px solid #A05555;
	}
.bs23_button_white_1 {
	text-align: center;
	color: #77B36B;
    background:rgba(255,255,255,1.00);
	border:1px dashed #77B36B;
	padding: 1px 5px 1px 5px;
	border-radius: 3px;
	text-decoration: none;
	
	}
.bs23_button_white_1:hover{
  	background-color: #585858;
	color: white;
	border:1px solid #585858;
	}
.bs23_button_white_2 {
	text-align: center;
	color: #77B36B;
    background:rgba(255,255,255,1.00);
	border:1px solid #77B36B;
	padding: 1px 5px 1px 5px;
	border-radius: 3px;
	text-decoration: none;
	
	}
.bs23_button_white_2:hover{
  	background-color: #585858;
	color: white;
	border:1px solid #585858;
	}

.bs23_button_grey_1 {
	text-align: center;
	color: #FFFFFF;
    background:#393939;
	border-color:#393939;
	text-decoration: none;
	}
.bs23_button_grey_1:hover{
  	background-color: #72AE74;
	border-color:#72AE74;
	color: #FFFFFF;	
	}
.bs23_button_grey_1:disabled {
	color: #FFFFFF;
    background:#BCBCBC;
	border-color:#BCBCBC;	
	}
.bs23_button_grey_1d {
	text-align: center;
	color: #393939;
    background:#E2E2E2;
	border-color:#E2E2E2;
	text-decoration: none;
	}
.bs23_button_grey_2 {
	text-align: center;
	color: #FFFFFF;
    background:#838383;
	border-color:#838383;
	text-decoration: none;
	border-radius: 3px;
	}
.bs23_button_grey_2:hover{
  	background-color: #72AE74;
	border-color:#72AE74;
	color: #454545;	
	}
.bs23_button_grey_3 {
	text-align: center;
	color: #FFFFFF;
    background:#686868;
	border-color:#686868;
	text-decoration: none;
	border-radius: 3px;
	}
.bs23_button_grey_3:hover{
  	background-color: #72AE74;
	border-color:#FF931E; 
	color: #454545;	
	}
.bs23_button_grey_4 {
	text-align: center;
	color: #686868;
    background:rgba(255,255,255,1.00);
	border:1px dashed #686868;
	padding: 1px 5px 1px 5px;
	border-radius: 3px;
	text-decoration: none;
	}
.bs23_button_grey_4:hover{
  	background-color: #686868;
	color: white;
	border:1px solid #686868;
	}
.bs23_button_transparent_1 {
	text-align: center;
	color: #393939;
    background:rgba(255,255,255,0.00);
	border-color:rgba(255,255,255,0.00);
	text-decoration: none;
	}
.bs23_button_transparent_1:hover{
	color: #FFFFFF;
  	background-color: #FF931E; 
	border-color:#FF931E; 
	}








/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* Image */
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */

.bs23_image_3  {
	width:auto;
	height:180px;
	border-radius: 10px;	
	padding: 0px;
	margin: 0px;
	filter: drop-shadow(2px 2px 5px #909090);
}
.bs23_image_4  {
	width:130px;
	height:130px;
	border-radius: 100%;
	-moz-border-radius: 100%;
	-webkit-border-radius: 100%;
	border:1px solid #979CA9;
	padding: 0px;
	margin: 0px;
	filter: drop-shadow(2px 2px 5px #909090);
}
.bs23_image_5  {
	width: 50px;
	height:50px;
	border-radius: 100%;
	-moz-border-radius: 100%;
	-webkit-border-radius: 100%;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	border: 1px dotted grey;
}














/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* Dialog */
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */

.ui-widget-content{	
	background-color: rgba(255,255,255,1.00)!important;
}


.ui-widget-header span
{
	font-size: 23px!important;
	color: rgba(0,0,0,1.00)!important;
}
.ui-widget-content{
	font-size: 20px!important;
	color: #525252!important;
}
.ui-dialog-buttonset{
	font-size: 20px!important;
	border-style: solid!important;
	border-left-width: 10px!important;
	border-right-width: 10px!important;
	border-bottom-width: 3px!important;
	border-top-width: 3px!important;
	margin-bottom: 5px!important;
	margin-top: 5px!important;
	padding: 0px!important;
	border-radius: 3px!important;
	text-align: center!important;
	color: #FFFFFF!important;
    background:#838383!important;
	border-color:#838383!important;
	text-decoration: none!important;	
	}
.ui-dialog-buttonset:hover{
  	background-color: #FF931E!important; 
	border-color:#FF931E!important; 
	color: #454545!important;			
	}

.bs23_label_projectoverview_1_red {
	font-size: 14px;
	color: #FFFFFF!important; 
	text-decoration: none;
	background-color: #A63434;
	padding-left: 5px;
	padding-right: 5px;
	}
.bs23_label_projectoverview_1_grey {
	font-size: 14px;
	color: #FFFFFF!important; 
	text-decoration: none;
	background-color: #353535;
	padding-left: 5px;
	padding-right: 5px;
	}
.bs23_label_projectoverview_1_yellow {
	font-size: 14px;
	color: #FFFFFF!important; 
	text-decoration: none;
	background-color: #957200;
	padding-left: 5px;
	padding-right: 5px;
	}
.bs23_label_projectoverview_1_orange {
	font-size: 14px;
	color: #FFFFFF!important; 
	text-decoration: none;
	background-color: #FF931E;
	padding-left: 5px;
	padding-right: 5px;
	}
.bs23_label_projectoverview_1_blue {
	font-size: 14px;
	color: #FFFFFF!important; 
	text-decoration: none;
	background-color: #183C4E;
	padding-left: 5px;
	padding-right: 5px;
	}
.bs23_box_projectoverview_01 {
	border-radius: 10px;
	}
.bs23_box_projectoverview_01b {
	border-radius: 10px;
	}
.bs23_box_projectoverview_02 {
	position: absolute; 
	left: 0px; 
	top: 0px; 
	z-index: 99;
	border-radius: 10px;
	}
.bs23_box_projectoverview_02b {
	position: absolute; 
	left: 0px; 
	top: 0px; 
	width: 156px; 
	height: 110px;
	z-index: 99;
	}
.bs23_box_projectoverview_02c {
	position: absolute; 
	left: 0px; 
	top: 0px; 
	height: 100%;
	z-index: 99;
	border-radius: 10px;
	}
.bs23_box_projectoverview_03 {
	width: 100%; 
	height: 100%;
	background-repeat:no-repeat;
	background-position: center;
	background-size: cover;
	border-radius: 10px;
	text-align: center;
	}
.bs23_box_projectoverview_03 img {
    width:  100%!important;
    height: 100%!important;
	border-radius: 10px;
}
.bs23_box_projectoverview_03b {
	width: 100%; 
	height: 100%;
	background-repeat:no-repeat;
	background-position: center;
	background-size:   cover;
	border-radius: 10px;
	text-align: center;
	transition: all 0.5s ease-in-out;
	}
.bs23_box_projectoverview_03b img {
    width: 128px!important;
    height: 90px!important;
	border-radius: 10px;
}
/*
.bs23_box_projectoverview_03b:hover {
    background-image: url("/images/placeholder_company_info.png")!important;
	transition: all 0.5s ease-in-out;
}*/

.bs23_box_projectoverview_04 {
 	position: absolute; 
	top: 2px; 
	left: 7px;
	}
.bs23_box_projectoverview_04b {
 	position: absolute; 
	top: 5px; 
	right: 7px;
	z-index: 99;
	}
.bs23_box_projectoverview_05 {
	position: absolute;
	top: 3px; 
	z-index: 98;
	}
.bs23_box_projectoverview_05b {
	position: absolute;
	top: 3px; 
	z-index: 98; 
	height: calc(100% - 10px);
	}	
.bs23_box_projectoverview_06 {
	position: absolute;
	z-index: 98;
	text-align: right;
	
	}
@media (min-width: 0px){
.bs23_box_projectoverview_01 {
	min-height: 90px; 
	}
.bs_datatables_div_02c {
	min-height: 110px; 
	}
.bs23_box_projectoverview_date_1 {
	display: none;
	}
.bs23_box_projectoverview_02 {
	width: 128px; 
	height: 90px;
	}
.bs23_box_projectoverview_05 {
	left: 148px; 
	width: calc(100% - 168px); 
	height: 110px; 
	top: -5px;
	}		
.bs23_box_projectoverview_06 {
	right: 5px; 
	bottom: 5px;
	}	
	
}
@media (min-width: 500px){
.bs23_box_projectoverview_01 {
	min-height: 110px; 
	}
.bs_datatables_div_02c {
	min-height: 110px; 
	}
.bs23_box_projectoverview_date_1 {
	display: block;
	position: absolute; 
	top: -2px; 
	right:0px;
	}
.bs23_box_projectoverview_02 {
	width: 156px; 
	height: 110px;
	}	
.bs23_box_projectoverview_05 {
	left: 176px; 
	width: calc(100% - 196px); 
	height: 110px; 
	top: 0px;
	}	
.bs23_box_projectoverview_06 {
	right: 5px; 

	bottom: 5px;
	}	

}



.bs23_box_projectoverview_status_div_1 {
	position: relative; 
	width: 100%; 
	height: 100%;
	}
.bs23_box_projectoverview_status_div_2 {
	position: absolute; 
	right: 0px; 
	top:50%; 
	margin-top:-40px;
	}

.bs23_box_projectoverview_status_1 {
	position: relative; 
	width: 80px;
	height: 80px; 
	background-image: url(/images/button_managebkp_pending.gif);
	background-size:65%;
	background-repeat: no-repeat;
	background-position: center;
	}
.bs23_box_projectoverview_status_2 {
	position: relative; 
	width: 80px;
	height: 80px; 
	background-image: url(/images/button_provider_overview_2.svg)
	}
.bs23_box_projectoverview_status_3 {
	position: relative; 
	width: 80px;
	height: 80px; 
	background-image: url(/images/button_provider_overview_3.svg)
	}
.bs23_box_projectoverview_status_4 {
	position: relative; 
	width: 80px;
	height: 80px; 
	background-image: url(/images/button_provider_overview_4.svg)
	}
.bs23_box_projectoverview_status_5 {
	position: relative; 
	width: 80px;
	height: 80px; 
	background-image: url(/images/button_provider_overview_5.svg)
	}
.bs23_button_projectoverview_01 {
	text-align: center;
	font-size: 16px;
	text-decoration: none;
	color: #4A4A4A;
    background:rgba(255,255,255,0.00);
	border-left:1px solid #BDBDBD;
	border-right: 1px solid #BDBDBD;
	border-bottom: 1px solid #BDBDBD;
	border-top: 1px solid #BDBDBD;
	padding-left: 10px;
	padding-right: 10px;	
	padding-bottom: 2px;	
	padding-top: 2px;	
	margin-left: 2px;
	}
.bs23_button_projectoverview_01:hover{
  	background-color:  #FF931E;
	color: #454545;
	border-color:#FF931E;
	}
.bs23_button_projectoverview_01_activ{
  	background-color: rgba(255,255,255,0.00);
	}
.bs23_button_projectoverview_01_inactiv{
  	background-color: rgba(255,255,255,0.00);
	}
.bs23_button_projectoverview_01_wait{
	color: #FFFFFF!important;
  	background-color: rgba(174,137,63,1.00);
	}
.bs23_button_projectoverview_01_accept{
	color: #FFFFFF!important;
  	background-color: rgba(75,167,84,1.00);
	}
.bs23_button_projectoverview_01_declined{
	color: #FFFFFF!important;
  	background-color: rgba(171,96,97,1.00);
	}

.bs23_button_projectoverview_01d {
	text-align: center;
	font-size: 16px;
	text-decoration: none;
	color: #4A4A4A;
    background:rgba(255,255,255,0.00);
	border-left:1px solid #BDBDBD;
	border-right: 1px solid #BDBDBD;
	border-bottom: 1px solid #BDBDBD;
	border-top: 1px solid #BDBDBD;
	padding-left: 10px;
	padding-right: 10px;	
	padding-bottom: 2px;	
	padding-top: 2px;	
	margin-left: 2px;
	}




.bs23_input_1 {
	width: 100%;
	/*width: calc(100% - 5px);*/
	text-align: left;
	font-family: abel, sans-serif;
	color: #525252; 
    background:  rgba(255,255,255,0.17);
	/*box-shadow: rgba(0,0,0,0.19) 0px 4px 12px;*/
	border: 1px solid rgba(255,255,255,0.00);
	transition: all 0.3s ease-in-out;
	padding-left: 5px;	
	}
.bs23_input_1:visited{
    background:  rgba(255,255,255,0.17);
	}
.bs23_input_1:hover{
	border:1px solid #FF931E;
	transition: all 0.3s ease-in-out;
	}
.bs23_input_1[readonly]{
	color: #525252;
	background-color: #F5F5F5;
	
	}
.bs23_input_1:hover[readonly]{
	color: #525252; 
	border:1px solid rgba(255,255,255,0.00);
	}
.bs23_input_1:disabled{
	color: #525252; 
	background-color: #F5F5F5;
	
	}
.bs23_input_1:disabled:hover{
	color: #525252; 
	border:1px solid rgba(255,255,255,0.00);
	}
.bs23_input_1::placeholder{
	color: #525252; 
	font-style: italic;
	}
.bs23_input_1[readonly]::placeholder{
	vertical-align: bottom;
	color: #606060;
	}
.bs23_input_1:disabled:placeholder{
	vertical-align: bottom;
	color: #8F9398;
	}
.bs23_input_1:-webkit-autofill,
.bs23_input_1:-webkit-autofill:hover, 
.bs23_input_1:-webkit-autofill:focus, 
.bs23_input_1:-webkit-autofill:active{
    -webkit-box-shadow: 0 0 0 30px white inset !important;
	border: 1px solid rgba(255,255,255,0.00);
	color: rgba(23,23,23,1.00);
	-webkit-text-fill-color: rgba(23,23,23,1.00);
}
    
.bs23_input_1:-webkit-autofill:hover{
    -webkit-box-shadow: 0 0 0 30px white inset !important;
	border:1px solid #FF931E;
	transition: all 0.3s ease-in-out;
}

.bs23_input_1:read-only::-webkit-input-placeholder { /* WebKit browsers */
    color:    #A4A4A4;
}
.bs23_input_1:read-only:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color:    #A4A4A4;
}
.bs23_input_1:read-only::-moz-placeholder { /* Mozilla Firefox 19+ */
    color:    #A4A4A4;
}
.bs23_input_1:read-only:-ms-input-placeholder { /* Internet Explorer 10+ */
    color:    #A4A4A4;
}
.bs23_input_1_marked{
	border: 1px solid #C6C6C6; 
	border-radius: 3px;
	padding: 5px;
	}
.bs23_input_2_marked{
	border:1px solid #D97910;
	}
.bs23_input_3_marked{
	border:1px solid #D4D4D4;
	}
.bs23_input_1_marked:disabled{
	color: #232323;
	border:1px solid rgba(255,255,255,0.17);
	transition: all 0.3s ease-in-out;
	}

.bs23_input_1d {
	width: calc(100% - 5px);
	text-align: left;
    background:  rgba(255,255,255,0.17);
	/*box-shadow: rgba(0,0,0,0.19) 0px 4px 12px;*/
	border: 1px solid rgba(255,255,255,0.00);
	transition: all 0.3s ease-in-out;
	padding-left: 5px;	
	color: #525252; 
	background-color: #F5F5F5;
	}


.bs23_input_1_orange {
	width: 100%;
	/*width: calc(100% - 5px);*/
	text-align: left;
	font-family: abel, sans-serif;
	color: rgba(255,152,44,1.00);
    background:  rgba(255,255,255,0.17);
	/*box-shadow: rgba(0,0,0,0.19) 0px 4px 12px;*/
	border: 1px solid rgba(255,152,44,1.00);
	transition: all 0.3s ease-in-out;
	padding-left: 5px;	
	
	
	}
.bs23_input_1_orange:hover{
	border:1px solid #FF931E;
	transition: all 0.3s ease-in-out;
	}


.bs23_button_checkbox_3 {
  display: block;
  position: relative;
  padding-left: 15px;
  margin-bottom: 0px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
/* Hide the browser's default checkbox */
.bs23_button_checkbox_3 input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
/* Create a custom checkbox */
.bs23_button_checkbox_3_check {
  	position: absolute;
  	top: -15px;
 	left: 0px;
  	height: 30px;
  	width: 30px;
  	margin-left: 0px;
	/*background-color: none;*/
	background-size: 120%;
	background-repeat: no-repeat;
	background-position:center; 
	transition: all 0.3s ease-in-out;
    background-color:  rgba(255,255,255,0.00);
	border: none;
	/*border-right: 1px solid #636363;
	border-top: 1px solid #636363;
	border-bottom: 1px solid #636363;
	border-left: 1px solid #636363;
	
	box-shadow: 1px 2px 5px 3px #3D3D3D;
	background-color:  #464646;
	
	
	*/
}

.bs23_button_checkbox_3_check {
	background-image: url("../images/checkbox_3d.svg");
}
/* On mouse-over, add a grey background color */
/*.bs23_button_checkbox_3:hover input:not(:checked) ~ .bs23_button_checkbox_3_check {
  	background-image: url("../images/checkbox_3a.svg");	
}*/
/* On mouse-over, add a grey background color */
/*.bs23_button_checkbox_3:hover input:checked ~ .bs23_button_checkbox_3_check {
  	background-image: url("../images/checkbox_3d.svg");	
}*/
/* When the checkbox is checked, add a blue background */
.bs23_button_checkbox_3 input:checked ~ .bs23_button_checkbox_3_check {
	background-image: url("../images/checkbox_3a.svg");
}

.bs23_button_checkbox_3 input:not(:checked)[readonly] ~ .bs23_button_checkbox_3_check {
	background-image: url("../images/checkbox_3e.svg");
}
.bs23_button_checkbox_3 input:disabled:not(:checked) ~ .bs23_button_checkbox_3_check {
	background-image: url("../images/checkbox_3e.svg");
}/*
.bs23_button_checkbox_3:hover input:not(:checked)[readonly] ~ .bs23_button_checkbox_3_check {
  	background-image: url("../images/checkbox_3e.svg");
}
.bs23_button_checkbox_3:hover input:disabled:not(:checked) ~ .bs23_button_checkbox_3_check {
  	background-image: url("../images/checkbox_3e.svg");
}*/


.bs23_button_checkbox_3 input:checked[readonly] ~ .bs23_button_checkbox_3_check {
	background-image: url("../images/checkbox_3b.svg");
}		
.bs23_button_checkbox_3 input:disabled:checked ~ .bs23_button_checkbox_3_check {
	background-image: url("../images/checkbox_3b.svg");
}/*	
.bs23_button_checkbox_3:hover input:checked[readonly] ~ .bs23_button_checkbox_3_check {
  	background-image: url("../images/checkbox_3b.svg");
}
.bs23_button_checkbox_3:hover input:disabled:checked ~ .bs23_button_checkbox_3_check {
  	background-image: url("../images/checkbox_3b.svg");
}*/


/* Create the checkmark/indicator (hidden when not checked) */
.bs23_button_checkbox_3_check:after {
  content: "";
  position: absolute;
  display: none;
}
/* Show the checkmark when checked */
.bs23_button_checkbox_3 input:checked ~ .bs23_button_checkbox_3_check:after {
  display: block;	
}
/* Style the checkmark/indicator */
.bs23_button_checkbox_3 .bs23_button_checkbox_3_check:after {
}

.bs23_box_group_1{
	background-color: #FF931E; 
	border-radius: 2px; 
	border-width: 2px 10px 2px 10px;
	border-color: #FF931E; 
	border-style: solid;
	color: #FFFFFF;	
	max-width: 100%;
	margin-top: 2px;
	margin-bottom: 5px;;
	padding:none;	
	width:auto;
	white-space: nowrap;
	overflow: hidden;
	text-overflow:ellipsis;	
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	display: -webkit-box;
	
}
.bs23_box_group_1:hover{
  	background-color: #DB9B56;
	border-color: #DB9B56;
}

















.bs23_box_tender_upload_1  {
	height: 100%;
	width: 100%;

	margin-bottom:20px;
	background-color: none; 
	/*box-shadow: 1px 2px 5px 3px #3D3D3D; */
	transition: 1s ease-in-out;	
	border: 0.5px dotted rgba(255,255,255,0.00);
}
.bs23_box_tender_upload_1 td:nth-child(1) {
	text-align: center;
	vertical-align: bottom;
	background-color: none; 
}
.bs23_box_tender_upload_1:hover  {
	/*background-color:rgba(208,224,206,1.00);
	box-shadow: 1px 2px 5px 3px #3D3D3D; */
	border: 0.5px dotted #FF931E;
}
.bs23_box_tender_upload_2  {
	height: 100%;
	width: 100%;

	margin-bottom:20px;
	background-color: none; 
	/*box-shadow: 1px 2px 5px 3px #3D3D3D; */
	transition: 1s ease-in-out;	
	border: 0.5px dotted rgba(163,163,163,1.00);
}
.bs23_box_tender_upload_2 td:nth-child(1) {
	text-align: center;
	vertical-align: bottom;
	background-color: none; 
}

.bs23_upload-box-container{
	position: relative;
	background-image: url("../images/button_upload_2.gif");
	background-size: 150px 150px;
	background-repeat: no-repeat;
	background-position: top center;
	text-align: center;
	vertical-align: bottom;
	background-color: none;
	color: #FF931E; 
	width: 100%;
	height: 160px;
	z-index: 99;
	}
.bs23_upload-box-container input{
	margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    outline: none;
    opacity: 0;
	z-index: 99;
}	
.bs23_upload-box-container label{
	position: absolute;
    width: 100%;
    left: 0;
    bottom: 5px;
    font-size: 14px;
    color: #A4A4A4;
    font-family: abel, sans-serif;
	z-index: 0;
}
.bs23_upload-box-container_2{
	position: relative;
	text-align: center;
	vertical-align: bottom;
	background-color: none;
	color: #FF931E; 
	width: 100%;
	height: 30px;
	z-index: 99;
	border: 1px solid red;
	}
.bs23_upload-box-container_2 input{
	margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    outline: none;
    opacity: 0;
	z-index: 99;
	background-color: green;
}	
.bs23_upload-box-container_2 label{
	position: absolute;
    width: 100%;
    left: 0;
    bottom: 5px;
    font-size: 14px;
    color: #515151;
    font-family: abel, sans-serif;
	z-index: 0;
}
.bs_button_cond_checkbox_2_example {
  background-image: url("../images/icon_checkbox_4.svg");	
}
.bs23_box_tender_documents_1  {
	background-color: #FF931E; 
	margin-bottom: 5px;
	border-radius: 5px;
	padding-left: 5px;
	
}
.bs23_box_tender_documents_1 td  {
	background-color: #FF931E; 
	color:#424141;

}

.bs23_box_tender_documents_1d  {
	background-color: #CFCFCF; 
	margin-bottom: 5px;
	border-radius: 5px;
	padding-left: 5px;
	
}
.bs23_box_tender_documents_1d td  {
	background-color: #CFCFCF; 
	color:#323232;

}
.bs23_box_tender_documents_1d label  {
	color:#323232!important;
}
.bs23_box_tender_documents_1d input  {
	color:#323232!important;
}


.bs23_box_tender_documents_2  {
	background-color:  #355574;
	margin-bottom: 5px;
	border-radius: 5px;
	padding-left: 5px;
}
.bs23_box_tender_documents_2 td  {
	background-color:  #355574;
	color:#FFFFFF;
}
.bs23_box_tender_documents_3  {
	background-color:  #4C4B4B;
	margin-bottom: 5px;
	border-radius: 5px;
	padding-left: 5px;
}
.bs23_box_tender_documents_3 td  {
	background-color:  #4C4B4B;
	color:#FFFFFF;
}
.bs23_box_tender_documents_3d  {
	background-color: #CFCFCF; 
	margin-bottom: 5px;
	border-radius: 5px;
	padding-left: 5px;
	
}
.bs23_box_tender_documents_3d td  {
	background-color: #CFCFCF; 
	color:#323232;

}
.bs23_box_tender_documents_3d label  {
	color:#323232!important;
}
.bs23_box_tender_documents_3d input  {
	color:#323232!important;
}

.bs_box_tender_uploaded_3  {
	display: block;
	padding: 30px;
	width: 100%;
	height: 100%;
	background-image: url("../images/button_download_2b.svg");
	background-size: 100%;
	background-repeat: no-repeat;
	background-position:center; 
	
}
.bs_box_tender_uploaded_3:hover  {
	background-image: url("../images/button_download_2d.svg");
}
.bs_box_tender_uploaded_3d  {
	display: block;
	padding: 30px;
	width: 100%;
	height: 100%;
	background-image: url("../images/button_download_2.svg");
	background-size: 100%;
	background-repeat: no-repeat;
	background-position:center; 
	
}
.bs_box_tender_uploaded_size_1  {	
    position: relative; /* Relative Positionierung notwendig für das Pseudo-Element */
    height: 35px;
    width: 35px;
    display: inline-block; /* Notwendig, um das Pseudo-Element korrekt zu positionieren */
    background-image: url("/images/button_offer_status_2.svg");
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
}	

.bs_box_tender_uploaded_4  {
	background-image: url("../images/button_download_14.png")!important;
}
.bs_box_tender_uploaded_5  {
	background-image: url("../images/button_download_13.png")!important;
}
.bs_box_tender_uploaded_5_1  {
	background-image: url("../images/button_download_13.png")!important;
}
.bs_box_tender_uploaded_5_1:hover  {
	background-image: url("../images/button_download_15.png")!important;
}
.bs_box_tender_uploaded_6  {
	background-image: url("../images/button_download_14.png")!important;
}


.bs_box_tender_uploaded_7  {
	display: block;
	padding: 30px;
	width: 100%;
	height: 100%;
	background-image: url("../images/button_download_8.svg");
	background-size: 100%;
	background-repeat: no-repeat;
	background-position:center; 
}
.bs_box_tender_uploaded_cover_2  {
	width:100%; 
	height:100%; 
	position:absolute; 
	z-index:99; 
	background-image: url("../images/file_covered_1.svg");
	background-color:rgba(255,255,255,0.44); 
	background-size: 150px;
	background-repeat: no-repeat;
	background-position:center bottom; 
	text-align: center;
}
.bs_box_tender_uploaded_8  {
	display: block;
	padding: 30px;
	width: 100%;
	height: 100%;
	background-image: url("../images/button_download_2c.svg");
	background-size: 100%;
	background-repeat: no-repeat;
	background-position:center; 
	
}
.bs_box_tender_chat_1{
	display: block;
	padding: 30px;
	width: 100%;
	height: 100%;
	background-image: url("../images/button_download_chat_1.png");
	background-size: 100%;
	background-repeat: no-repeat;
	background-position:center; 
}
.bs_box_tender_chat_1:hover{
	background-image: url("../images/button_download_chat_1b.png");
}
.bs_box_tender_chat_2{
	display: block;
	padding: 30px;
	width: 100%;
	height: 100%;
	background-image: url("../images/button_download_chat_2.png");
	background-size: 100%;
	background-repeat: no-repeat;
	background-position:center; 
}
.bs_box_tender_uploaded_9 {
	background-image: url("../images/button_download_16.png");
}
.bs_box_tender_uploaded_9:hover {
	background-image: url("../images/button_download_15b.png");
}
.bs_box_tender_uploaded_10  {
	display: block;
	padding: 30px;
	width: 100%;
	height: 100%;
	background-image: url("../images/button_download_2c.svg");
	background-size: 100%;
	background-repeat: no-repeat;
	background-position:center; 
	
}

.bs_input_tender_1 {
	font-size: 16px;
	text-align: left;
	color: #FFFFFF; 
	text-decoration: none;
	border:0px;
	padding-left: 0px;
	}
.bs_input_tender_1:disabled{	
	color: #FFFFFF; 
	text-decoration: none;
	}
.bs_input_tender_1::placeholder {
	color: #FFFFFF; 
	text-decoration: none;
	}
.bs_dropdown_obligation_2 {
	-moz-appearance: none;
	-webkit-appearance: none;
	color: #FFFFFF;
	appearance: none;
	width: calc(100% - 48px);
  	height: 29px;
  	background: transparent;
	outline: none;
	text-align: left;
	padding: 0px;
	margin: 0px;
	border:1px solid transparent;
	transition: all 0.3s ease-in-out;	
    }
.bs_dropdown_obligation_2::placeholder {
	color: #606060;
	font-style: italic;
	font-weight: normal;
	background-color: white;
	padding-left: 5px;
    }
.bs_dropdown_obligation_2:hover {
	color: #606060;
	font-weight: normal;
	background-color: white;
	padding-left: 5px;
    }
.bs_dropdown_obligation_2:read-only:hover {
	-moz-appearance: none;
	-webkit-appearance: none;
	color: #FFFFFF;
	appearance: none;
	width: calc(100% - 48px);
  	height: 29px;
  	background: transparent;
	outline: none;
	text-align: left;
	padding: 0px;
	margin: 0px;
	border:1px solid transparent;
	transition: all 0.3s ease-in-out;	
    }



.bs23_dropdown_1 {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	font-family: 'Abel', sans-serif;
	font-size: 16px;
	color: #4d4d4d;
	background-color: #ffffff;
	background-image: url('/images/button_arrow_down_2.png');
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-size: 10px;
	padding: 0 30px 0 12px;
	height: 36px;
	min-width: 180px;
	border: 1px solid #ebebeb;
	border-radius: 6px;
	cursor: pointer;
	outline: none;
	transition: border-color 0.2s ease-in-out, background-color 0.2s ease-in-out;
    }
.bs23_dropdown_1:hover {
	border-color: #72AE74;
	background-color: #f5f7f2;
	color: #4d4d4d;
    }
.bs23_dropdown_1:focus {
	border-color: #72AE74;
	background-color: #ffffff;
    }
.bs23_dropdown_1:disabled {
	opacity: 0.5;
	cursor: not-allowed;
    }

/* ============================================================
   bs23_dropdown_btn_*  —  Trigger-Button mit aufklappendem Menü
   Pattern: <div class="bs23_dropdown_btn_wrap [.open]">
              <button class="bs23_dropdown_btn">Label <svg class="bs23_dropdown_btn_chevron">…</svg></button>
              <div class="bs23_dropdown_btn_menu">
                <div class="bs23_dropdown_btn_item">…</div>
                <div class="bs23_dropdown_btn_item bs23_dropdown_btn_item_action">…</div>
              </div>
            </div>
   .open auf dem Wrap blendet das Menü ein (JS-Toggle).
   ============================================================ */
.bs23_dropdown_btn_wrap { position: relative; display: inline-block; }
.bs23_dropdown_btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	height: 36px;
	padding: 0 14px;
	background: #fff;
	border: 1px solid #ebebeb;
	border-radius: 6px;
	font-family: abel, sans-serif;
	font-size: 16px;
	color: #4d4d4d;
	cursor: pointer;
	transition: border-color 0.2s, background-color 0.2s, color 0.2s;
}
.bs23_dropdown_btn:hover {
	border-color: #72AE74;
	background: #72AE74;
	color: #fff;
}
.bs23_dropdown_btn_chevron {
	width: 10px; height: 10px;
	transition: transform 0.2s;
}
.bs23_dropdown_btn_wrap.open .bs23_dropdown_btn_chevron { transform: rotate(180deg); }

.bs23_dropdown_btn_menu {
	display: none;
	position: absolute;
	top: calc(100% + 6px);
	left: 0;
	min-width: 280px;
	background: #fff;
	border: 1px solid #ebebeb;
	border-radius: 8px;
	box-shadow: rgba(0, 0, 0, 0.12) 0px 8px 24px, rgba(0, 0, 0, 0.06) 0px 0px 0px 1px;
	z-index: 100;
	padding: 6px;
}
.bs23_dropdown_btn_wrap.open .bs23_dropdown_btn_menu { display: block; }

.bs23_dropdown_btn_item {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 9px 12px;
	margin: 0;
	border-radius: 6px;
	font-family: abel, sans-serif;
	font-size: 16px;
	color: #323232;
	cursor: pointer;
	text-decoration: none;
	transition: background-color 0.12s, color 0.12s;
}
.bs23_dropdown_btn_item + .bs23_dropdown_btn_item { margin-top: 1px; }
.bs23_dropdown_btn_item:hover {
	background: #eff5ef;
	color: #72AE74;
}
.bs23_dropdown_btn_item_empty {
	color: #999;
	font-style: italic;
	cursor: default;
	justify-content: center;
	padding: 14px 12px;
}
.bs23_dropdown_btn_item_empty:hover { background: transparent; color: #999; }

/* Badge links im Item (z.B. Kürzel "RB" für "Rohbau") */
.bs23_dropdown_btn_badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	min-width: 32px;
	height: 22px;
	padding: 0 7px;
	background: #f0f3ef;
	border: 1px solid #e0e6dc;
	border-radius: 5px;
	font-family: abel, sans-serif;
	font-size: 12px;
	font-weight: 600;
	color: #6B6B6B;
	text-align: center;
	transition: all 0.12s;
}
.bs23_dropdown_btn_item:hover .bs23_dropdown_btn_badge {
	background: #fff;
	border-color: #72AE74;
	color: #72AE74;
}

/* Hervorgehobenes Aktions-Item ("ändern / hinzufügen", "Neue Position", …)
   — visuell durch dünnen Trennstrich vom Rest abgegrenzt */
.bs23_dropdown_btn_item_action {
	margin-top: 6px;
	padding-top: 12px;
	color: #72AE74;
	font-weight: 600;
	position: relative;
}
.bs23_dropdown_btn_item_action::before {
	content: '';
	position: absolute;
	top: 4px;
	left: 12px;
	right: 12px;
	height: 1px;
	background: #ebebeb;
}
.bs23_dropdown_btn_item_action:hover { background: #eff5ef; color: #72AE74; }
.bs23_dropdown_btn_item_action svg { width: 16px; height: 16px; flex: 0 0 auto; }

.bs23_dropdown_upload_1 {
	-moz-appearance: none;
	-webkit-appearance: none;
	color: #FFFFFF;
	appearance: none;
  	height: 29px;
  	background: transparent;
	outline: none;
	text-align: left;
	padding: 0px;
	margin: 0px;
	border:0.5px dotted rgba(255,255,255,0.00);
	transition: all 0.3s ease-in-out;
	z-index: 99;
	width: calc(100% - 48px);

    }
.bs23_dropdown_upload_1::placeholder {
	color:#FF931E;
	font-style: italic;
	font-weight: normal;
	background-color: white;
	padding-left: 5px;
    }
.bs23_dropdown_upload_1:hover {
	color:#FF931E;
	font-weight: normal;
	background-color: white;
	padding-left: 5px;
	
    }
.bs23_box_tender_add_delete_1 {
	position: absolute; 
	top: -7px; 
	left: -11px;
}
.bs23_box_tender_add_delete_2 {
	position: absolute; 
	top: -5px; 
	left: -11px;
}
.bs23_box_tender_uploaded_1  {
	padding-left: 30px;
	padding-right: 30px;
	padding-top: 15px;
	padding-bottom: 15px;
	background-image: url("../images/button_download_9.svg");
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;	
}
.bs23_box_tender_uploaded_1:hover  {
	background-image: url("../images/button_download_10.svg");
}
.bs23_box_tender_uploaded_3  {
	position: relative; 
	/*width: calc(100% - 100px);*/
	width: 100%;
}
.bs23_box_tender_uploaded_2  {
	padding-left: 30px;
	padding-right: 30px;
	padding-top: 15px;
	padding-bottom: 15px;
	background-image: url("../images/button_download_3.svg");
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;	
}
.bs23_box_tender_uploaded_4  {
	padding-left: 30px;
	padding-right: 30px;
	padding-top: 15px;
	padding-bottom: 15px;
	background-image: url("../images/button_download_11.svg");
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;	
}



.bs_button_cond_checkbox_2 {
  display: block;
  position: relative;
  padding-left: 15px;
  margin-bottom: 0px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default checkbox */
.bs_button_cond_checkbox_2 input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}


/* CSS Document */
.bs23_animation_scale_1 {
	-webkit-animation: bs23_animation_scale_1 1.6s cubic-bezier(0.390, 0.575, 0.565, 1.000) infinite both;
	        animation: bs23_animation_scale_1 1.6s cubic-bezier(0.390, 0.575, 0.565, 1.000) infinite both;
}
/* ----------------------------------------------
 * Generated by Animista on 2023-9-10 12:56:36
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation bs23_animation_scale_1
 * ----------------------------------------
 */
@-webkit-keyframes bs23_animation_scale_1 {
  0% {
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes bs23_animation_scale_1 {
  0% {
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}



.bs23_animation_slide_1 {
	-webkit-animation: bs23_animation_slide_1 1.8s cubic-bezier(0.250, 0.460, 0.450, 0.940) infinite both;
	        animation: bs23_animation_slide_1 1.8s cubic-bezier(0.250, 0.460, 0.450, 0.940) infinite both;
}

/* ----------------------------------------------
 * Generated by Animista on 2023-9-10 7:43:5
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation bs23_animation_slide_1
 * ----------------------------------------
 */
@-webkit-keyframes bs23_animation_slide_1 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(15px);
            transform: translateX(15px);
  }
}
@keyframes bs23_animation_slide_1 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(15px);
            transform: translateX(15px);
  }
}








/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% *//* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% *//* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% *//* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% *//* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% *//* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% *//* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% *//* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */



.bs23_frame_1_close_2{
	position: absolute;
	top:3px;
	right: 3px;
	z-index: 60;
 	}
.bs23_frame_1_close_2 a {
	background-image: url("../images/button_close_2b.svg");
	background-size: 18px 18px;
	background-repeat: no-repeat;
	background-color: transparent;
	background-position: right center;
	border: none;
	padding-left: 9px;
	padding-right: 9px;
	padding-bottom: 0px;
	padding-top:0px;
	}
.bs23_frame_1_close_2 a:hover{
	background-image: url("../images/button_close_4.svg");
	color:#FFFFFF;
	}


.bs_box_colgroup_5 tr:nth-child(1) {
	width: 300px
}
.bs_box_colgroup_5 tr:nth-child(2) {
	
	

}


.bs23_box_1{
	width: 100%;
	table-layout: fixed;
	text-align: left;
	border-collapse:collapse;
	margin-right: 5px;
	margin-top: 15px;
	/* background-color: #424141;
	border: 1px solid #343434; */
	border-radius: 3px;
 	}
.bs23_box_1 th label{
	padding-top: 0px;
  	padding-bottom: 0px;
	padding-left: 5px;
	padding-right: 5px;
	color: #FFFFFF;
	font-weight:normal;
	background-color: #686868;
	border-radius: 3px;
	margin-left: 4px;
	}
.bs23_box_1 td{
	padding-top: 2px;
  	padding-bottom: 2px;
	padding-left: 5px;
	padding-right: 5px;
	}

.bs23_box_1 tr {
	border-bottom: 0.5px solid #E7E7E7;
	/*border-bottom: 1px solid #343434; */
	}
.bs23_box_1 tr:nth-last-child(1) {
	/*border-bottom: 1px solid #343434; */
	}
.bs23_box_1 td:nth-child(2) {
	text-align: left
	}
.bs23_box_1 tr:nth-child(1) {
	text-align: left;
	color: white;
	/*background-color: #4B4B4B;
	border-left: 1px solid #4B4B4B;
	border-right: 1px solid #4B4B4B;
	border-top: 1px solid #4B4B4B;
	border-bottom: 1px solid #343434; */
	}
.bs23_box_1b{
	width: 100%;
	table-layout: fixed;
	text-align: left;
	border-collapse:collapse;
	margin-right: 5px;
	margin-top: 20px;
	/*background-color: #424141;
	border: 1px solid #343434;
	border-radius: 3px;*/
 	}
.bs23_box_1b th{
	padding-top: 2px;
  	padding-bottom: 2px;
	padding-left: 5px;
	padding-right: 5px;
	color: #FFFFFF;
	font-weight:normal;
	}
.bs23_box_1b td{
	padding-top: 2px;
  	padding-bottom: 2px;
	padding-left: 5px;
	padding-right: 5px;
	
	}
.bs23_box_1b tr {
	border-bottom: 0.5px solid #373737;
	/*border-bottom: 1px solid #343434;*/
	}
.bs23_box_1b tr:nth-last-child(1) {
	/*border-bottom: 1px solid #343434;*/
	}
.bs23_box_1b td:nth-child(2) {
	text-align: left
	}
.bs23_box_1c{
	width: 100%;
	table-layout: fixed;
	text-align: left;
	border-collapse:collapse;
	margin-right: 5px;
	margin-top: 15px;
	/*background-color: #424141;
	border: 1px solid #343434;*/
	border-radius: 3px;
 	}
.bs23_box_1c th label{
	padding-top: 2px;
  	padding-bottom: 2px;
	padding-left: 5px;
	padding-right: 5px;
	color: #FFFFFF;
	font-weight:normal;
	margin-left: 4px;
	}

.bs23_box_1c td{
	padding-top: 2px;
  	padding-bottom: 2px;
	padding-left: 5px;
	padding-right: 5px;
	
	}
.bs23_box_1c tr {
	border-bottom: 0.5px solid #373737;
	/*border-bottom: 1px solid #343434;*/
	}
.bs23_box_1c tr:nth-last-child(1) {
	/*border-top: 1px solid #343434;
	border-left: 1px solid #4B4B4B;
	border-right: 1px solid #4B4B4B;
	border-bottom: 1px solid #4B4B4B;
	background-color: #4B4B4B;*/
	
	}
.bs23_box_1c td:nth-child(2) {
	text-align: left
	}
.bs23_box_1c tr:nth-child(1) {
	text-align: left;
	color: white;
	/*background-color: #4B4B4B;
	border-left: 1px solid #4B4B4B;
	border-right: 1px solid #4B4B4B;
	border-top: 1px solid #4B4B4B;
	border-bottom: 1px solid #343434;*/
	}
.bs23_box_1d{
	width: 100%;
	table-layout: fixed;
	text-align: left;
	border-collapse:collapse;
	margin-right: 5px;
	margin-top: 15px;
	/* background-color: #424141;
	border: 1px solid #343434; */
	border-radius: 3px;
 	}
.bs23_box_1d th label{
	padding-top: 0px;
  	padding-bottom: 0px;
	padding-left: 5px;
	padding-right: 5px;
	color: #FFFFFF;
	font-weight:normal;
	background-color: #686868;
	border-radius: 3px;
	margin-left: 4px;
	}
.bs23_box_1d td{
	padding-top: 2px;
  	padding-bottom: 2px;
	padding-left: 5px;
	padding-right: 5px;
	}
.bs23_box_1d td:nth-child(2) {
	text-align: left
	}
.bs23_box_1d tr:nth-child(1) {
	text-align: left;
	color: white;
	}

.bs23_box_1e{
	width: 100%;
	table-layout: fixed;
	text-align: left;
	border-collapse:collapse;
	margin-right: 5px;
	margin-top: 15px;
	/* background-color: #424141;*/
	border: 0px solid #343434; 
	border-radius: 3px;
 	}
.bs23_box_1e th label{
	padding-top: 0px;
  	padding-bottom: 0px;
	padding-left: 5px;
	padding-right: 5px;
	color: #FFFFFF;
	font-weight:normal;
	background-color: #686868;
	border-radius: 3px;
	margin-left: 4px;
	}


.bs23_box_1e td{
	padding-top: 2px;
  	padding-bottom: 2px;
	padding-left: 5px;
	padding-right: 5px;
	}
.bs23_box_1e td:nth-child(2) {
	text-align: left
	}
.bs23_box_1e tr:nth-child(1) {
	text-align: left;
	color: white;
	}


.bs23_box_1_orange{
	width: 100%;
	table-layout: fixed;
	text-align: left;
	border-collapse:collapse;
	margin-right: 5px;
	margin-top: 15px;
	background-color: #424141;
	border: 1px solid #FF931E;
	border-radius: 3px;
 	}
.bs23_box_1_orange td{
	padding-top: 2px;
  	padding-bottom: 2px;
	padding-left: 5px;
	padding-right: 5px;
	}
.bs23_box_1_orange tr {
	border-bottom: 1px solid #343434;
	}
.bs23_box_1_orange tr:nth-last-child(1) {
	border-bottom: 1px solid #FF931E;
	}
.bs23_box_2{
	border-bottom: 1px solid #FF931E;
	}
.bs23_box_popup_1{
	width: 100%;
	table-layout: fixed;
	text-align: left;
	border-collapse:collapse;
	margin-right: 5px;
	margin-top: 15px;
	background-color: transparent;
	overflow:hidden;
	/*border: 1px solid #343434;
	border-radius: 3px;*/
 	}
.bs23_box_popup_1 th{
	padding-top: 2px;
  	padding-bottom: 2px;
	padding-left: 5px;
	padding-right: 5px;
	color: #FFFFFF;
	font-weight:normal;
	}
.bs23_box_popup_1 td{
	padding-top: 2px;
  	padding-bottom: 2px;
	padding-left: 5px;
	padding-right: 5px;
	}
.bs23_box_popup_1 tr {
	/*border-bottom: 0.5px solid #373737;
	border-bottom: 1px solid #343434;*/
	}
.bs23_box_popup_1 tr:nth-last-child(1) {
	/*border-bottom: 1px solid #343434;*/
	}
.bs23_box_popup_1 td:nth-child(2) {
	text-align: left
	}
.bs23_box_popup_1 tr:nth-child(1) {
	color: #FFFFFF;
	text-align: left;
	background-color: transparent;
	/*border-left: 1px solid #4B4B4B;
	border-right: 1px solid #4B4B4B;
	border-top: 1px solid #4B4B4B;
	border-bottom: 1px solid #4B4B4B;*/
	}
.bs23_box_popup_1 tr:nth-child(2) {
	text-align: left;
	background-color: transparent;
	/*border-left: 1px solid #4B4B4B;
	border-right: 1px solid #4B4B4B;
	border-top: 1px solid #4B4B4B;
	border-bottom: 1px solid #343434;*/
	}
.bs23_box_popup_2{
	width: 100%;
	text-align: left;
	border-collapse:collapse;
	margin-right: 5px;
	margin-top: 0px;
 	}
.bs23_box_popup_2 td{
	padding-top: 10px;
  	padding-bottom: 5px;
	padding-left: 5px;
	padding-right: 5px;
	}


.bs23_popup_1{
	left: 50%;   
	transform: translate(-50%,0);
	position: relative;
	background-color: #FFFFFF;
	padding: 5px 10px 10px 10px;
	width: auto;
	max-width: 800px;
	border-radius: 10px;
	overflow-x: hidden;
	overflow-y: auto;
	box-shadow: none;
	
}
.bs23_popup_2{
	background-color: #FFFFFF;
	padding: 5px 5px 5px 5px;
	max-width: 400px;
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
	border:none;
 	}
.bs23_popup_3{
	left: 50%;   
	transform: translate(-50%,0);
	position: relative;
	background-color: rgba(255,255,255,0.00);
	padding: 0px;
	width: auto;
	border-radius: 10px;
	overflow-x: hidden;
	overflow-y: auto;
	box-shadow: none;
}
.bs23_popup_4_top{
	background-color: #FFFFFF;
	padding: 5px 10px 10px 10px;
	width: auto;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	margin-bottom: 2px;
	overflow-x: hidden;
	overflow-y: hidden;
	box-shadow: none;
}
.bs23_popup_4_middle{
	background-color: #FFFFFF;
	padding: 5px 10px 10px 10px;
	width: auto;
	margin-bottom: 2px;
	overflow-x: hidden;
	overflow-y: hidden;
	box-shadow: none;
}
.bs23_popup_4_bottom{
	background-color: #FFFFFF;
	padding: 5px 10px 10px 10px;
	width: auto;
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
	overflow-x: hidden;
	overflow-y: hidden;
	box-shadow: none;
}
.bs23_popup_help_1{
	max-width: 800px;
	box-shadow: 3px 5px 10px 0px #3D3D3D;
	overflow-y:auto;
	background-color: #526152;
 	}
.bs23_popup_video_1{
	background-color: #FFFFFF;
	padding: 10px 10px 10px 10px;
	max-width: 800px;
	max-height: 100%;
	box-shadow: 3px 5px 10px 0px #3D3D3D;
	border-radius: 5px;
 	}
.bs23_popup_video_1 table{
	max-height: 100%;
	height: 100%;
 	}
.bs_box_popup_success_1 {
	background-image: url("../images/popup_success_1.svg");
	background-size: auto;
	background-repeat: no-repeat;
	background-color: transparent;
	background-position: center ;
	width: 80px;
	height: 60px;
	border: none;
	}
.bs_box_popup_alert_1 {
	background-image: url("../images/popup_alert_1.svg");
	background-size: auto 100% ;
	background-repeat: no-repeat;
	background-color: transparent;
	background-position: center ;
	width: 80px;
	height: 60px;
	border: none;
	}	
.bs_box_popup_decision_1 {
	background-image: url("../images/popup_decision_1.gif");
	background-size: auto 100% ;
	background-repeat: no-repeat;
	background-color: transparent;
	background-position: center ;
	width: 80px;
	height: 60px;
	border: none;
	}	
.bs_box_popup_danger_1 {
	background-image: url("../images/popup_danger_1.svg");
	background-size: auto 100% ;
	background-repeat: no-repeat;
	background-color: transparent;
	background-position: center ;
	width: 80px;
	height: 60px;
	border: none;
	}	
.bs23_box_info_1{
	border: 0px solid #FF931E; 
	font-size: 14px;
	padding: 3px; 
	margin-bottom: 5px; 
	border-collapse: collapse;
	box-shadow: rgba(0, 0, 0, 0.03) 0px 4px 12px;
	}
.bs23_box_info_1 td:nth-child(1) label{
	 writing-mode: vertical-rl;
    line-height: 150%;
    white-space: pre;
    transform: rotate(180deg);
	text-align: center;
	font-weight: bold;
	text-transform: uppercase;
	color: #FFFFFF;
	min-width: 30px;
	}

.bs23_box_info_1 td:nth-child(1){
	background-color: rgba(143,129,100,1.00);
	border-radius: 5px 0px 0px 5px;
	padding: 10px 5px 5px 5px;
	vertical-align: middle;
	width: 40px;

	}
.bs23_box_info_1 td:nth-child(2){

	background-color: rgba(159,152,139,1.00);
	border-radius: 0px 5px 5px 0px;
	padding: 10px 10px 10px 10px;
	}
.bs23_box_info_1 label{
	color: rgba(255,255,255,1.00);
	}
.bs23_box_alert_1{
	font-size: 14px;
	padding: 3px;
	margin-bottom: 5px;
	border-collapse: collapse;
	box-shadow: rgba(0, 0, 0, 0.03) 0px 4px 12px;
	/* Meldung immer nach vorne: absolut positionierte Overlays (z.B. #canvas-map in
	   offering/searchproject) wuerden sonst darueber liegen, weil positionierte Elemente
	   grundsaetzlich ueber statischen gezeichnet werden. */
	position: relative;
	z-index: 1;
	}
.bs23_box_alert_1 td:nth-child(1) label{
	writing-mode: vertical-rl;
    line-height: 150%;
    white-space: pre;
    transform: rotate(180deg);
	text-align: center;
	font-weight: bold;
	text-transform: uppercase;
	color: #FFFFFF;
	}
.bs23_box_alert_1 td:nth-child(1){
	background-color: rgba(143,100,100,1.00);
	border-radius: 5px 0px 0px 5px;
	padding: 10px 5px 5px 5px;
	vertical-align: middle;
	width: 40px;
	}
.bs23_box_alert_1 td:nth-child(2){

	background-color: rgba(159,139,139,1.00);
	border-radius: 0px 5px 5px 0px;
	padding: 10px 10px 10px 10px;
	}
.bs23_box_alert_1 label{
	color: rgba(255,255,255,1.00);
	}
.bs_box_image_1{
	width: auto;
	height: 250px;
	font-family: abel, sans-serif;
	font-size: 14px;
	color: #FF931E; 
	text-decoration: none;
	border-radius: 10px;
}

.bs23_box_popup_close_1{
	position: absolute;
	top:5px;
	right: 5px;
 	}
.bs23_button_popup_close_1 {
	background-size: 36px 36px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 36px;
	height: 36px;
	border: none;
	padding-left: 18px;
	padding-right: 18px;
	padding-bottom: 18px;
	padding-top:0px;
	background-image: url("../images/button_close_3.svg");
	}
.bs23_button_popup_close_1:hover{
	background-image: url("../images/button_close_2b.svg");
	}



.bs_box_help_1{
	width: 100%;
	table-layout: fixed;
	text-align: left;
	border-collapse:collapse;
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 20px;
	padding-bottom: 20px;
	background-color: #526152;
	border-bottom: 3px solid #414E41;
 	}
.bs_box_help_1 th{
	padding-top: 13px;

  	padding-bottom: 2px;
	padding-left: 10px;
	padding-right: 10px;
	color: #FFFFFF;
	font-size: 20px;
	font-weight:normal;
	}
.bs_box_help_1 td{
	padding-top: 10px;
  	padding-bottom: 10px;
	padding-left: 10px;
	padding-right: 10px;
	}
.bs_box_help_1 label{
	color:#D7D7D7;
	font-weight:normal;
	font-size: 20px;
	}
.bs_box_help_1 tr:nth-child(1){
	text-align: left;
	}
.bs_box_help_1 tr:nth-child(1) label {
	color: white;
	}
.bs_box_help_2{
	width: 100%;
	table-layout: fixed;
	text-align: left;
	border-collapse:collapse;
	background-color: #495749;
	font-size: 14px;
	padding-left: 5px;
	padding-right: 5px;
	padding-top: 0px!important;
	padding-bottom: 0px!important;	
 	}
.bs_box_help_2 td{
	padding-left: 4px;
	padding-right: 4px;
	padding-top: 2px;
	padding-bottom: 2px;
	}
.bs_box_help_3_1{
	position:relative;
	height:40px;
	padding-top: 10px;
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 10px;
	text-align: left;
	color: #FFFFFF;
	font-size: 20px;
	font-weight:normal;
	background-color: #414E41;
	
 	}
.bs_box_help_3_2{
	position:absolute;
	right: 10px;
	top: 10px;
 	}
.bs_box_help_3_3{
	height:calc(100vh - 40px);
	position:relative;
 	}
.bs_box_help_3_4{
	max-height:100%;
	overflow:auto;
 	}
.bs_box_help_4{
	width: 100%;
 	}
.bs_box_help_4 td{
	padding-top: 2px;
  	padding-bottom: 2px;
	padding-left: 0px;
	padding-right: 0px;
	}

.bs23_datatables_table_01 {
	width: 100%;
	/*background-color: rgba(255,255,255,0.00)!important;*/
	border-collapse: collapse;
	}
.bs23_datatables_table_01 thead td {
	}
.bs23_datatables_table_01 tbody td{
	/*background-color: rgba(255,255,255,0.00)!important;*/
	}
.bs23_datatables_table_01 tbody tr{
	}
.bs23_datatables_table_01.dataTable.no-footer{

	}
.bs23_datatables_table_01.dataTable thead td {
	}
/* Plain log list (e.g. cost log): readable dark header on white instead of the DataTables default */
table.bs23_table_log_1 thead th,
table.bs23_table_log_1.dataTable thead th {
	background-color: #FFFFFF;
	color: #525252;
	font-weight: bold;
	text-align: left;
	padding: 8px 10px;
	border-bottom: 1px solid #C5C5C5;
	}
table.bs23_table_log_1.dataTable tbody td,
table.bs23_table_log_1 tbody td {
	padding: 6px 10px;
	border-bottom: 1px solid #EEEEEE;
	vertical-align: top;
	}
.bs23_box_log_1 {
	padding: 16px;
	}
.bs23_datatables_table_02 {
	width: calc(100% + 10px);
	/*background-color: rgba(255,255,255,0.00)!important;*/
	border-collapse: collapse;
	}
.bs23_datatables_div_01 {
	position: relative;
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
	margin-top: 3px;
	margin-bottom: 3px;
	z-index: 90;
	border-radius: 10px;
	transition: all 0.5s ease-in-out;
	width: 100%;
	}
.bs23_datatables_div_01:hover {
	box-shadow: rgba(14, 30, 37, 0.12) 0px 0px 30px 0px, rgba(14, 30, 37, 0.32) 0px 0px 30px 0px;
	transition: all 0.5s ease-in-out;
	}
.bs23_datatables_div_01b {
	position: relative;
	margin-top: 3px;
	margin-bottom: 3px;
	z-index: 90;
	}
.bs23_datatables_div_01c {
	position: relative;
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
	margin-top: 3px;
	margin-bottom: 3px;
	z-index: 90;
	border-radius: 5px;
	transition: all 0.5s ease-in-out;
	padding:10px;
	width: 100%;
	}
.bs23_datatables_div_01c:hover {
	box-shadow: rgba(14, 30, 37, 0.12) 0px 0px 30px 0px, rgba(14, 30, 37, 0.32) 0px 0px 30px 0px;
	transition: all 0.5s ease-in-out;
	}
.bs23_datatables_div_02 {
	position: relative;
	background-color: #FFFFFF!important;
	width: 100%;
	height: 100%;
	z-index: 91;
	transition: 600ms ease-in;
	left:0px;
	}
.bs23_datatables_div_02:hover {
	left: 0px;
	transition: 500ms ease-out;
	}
.bs23_datatables_div_02b {
	position: relative;
	/*background-color: #424141!important;*/
	width: 100%;
	height: 100%;
	z-index: 91;
	transition: 600ms ease-in;
	left:0px;
	border-bottom: 1px solid #232323;
	border-top: 1px solid #232323;
	}
.bs23_datatables_div_02b:hover {
	/*background-color: #CACACA!important;*/
	left: 2px;
	transition: 500ms ease-out;
	}
.bs23_datatables_div_02c {
	position: relative;
	background-color: #FFFFFF!important;
	width: 100%;
	height: 100%;
	z-index: 91;
	transition: 600ms ease-in;
	left:0px;
	}
.bs23_datatables_div_02c:hover {
	left: 0px;
	transition: 500ms ease-out;
	}
.bs23_datatables_div_02d {
	position: relative;
	/*background-color: #424141!important;*/
	width: 100%;
	height: 100%;
	z-index: 91;
	transition: 600ms ease-in;
	left:0px;
	}
.bs23_datatables_div_02d:hover {
	left: 2px;
	transition: 500ms ease-out;
	}
.bs23_datatables_div_03 {
	position: relative;
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 2px 0px, rgba(14, 30, 37, 0.32) 0px 2px 8px 0px;
	margin-top: 3px;
	margin-bottom: 3px;
	z-index: 90;
	border-radius: 10px;
	transition: all 0.5s ease-in-out;

	}
.bs23_datatables_div_03:hover {
	/*box-shadow: 5px 3px 10px 2px #343434;*/
	box-shadow: rgba(14, 30, 37, 0.12) 0px 0px 30px 0px, rgba(14, 30, 37, 0.32) 0px 0px 30px 0px;
	transition: all 0.5s ease-in-out;
	}	
.bs23_datatables_div_04 {
	position: relative;
	/*background-color: #3D3D3D!important;*/
	width: 100%;
	height: 100%;
	z-index: 91;
	left:0px;
	}
.bs23_datatables_div_04:hover {
	/*background-color: #5F4B36!important;
	left: 2px;
	transition: 500ms ease-out;*/
	}
.bs23_datatables_div_05 {
	position: relative;
	transition: 600ms ease-in;
	left:0px;
	}
.bs23_datatables_div_05:hover {
	left: 2px;
	transition: 500ms ease-out;
	}

.bs23_datatables_div_02d {
	position: relative;
	/*background-color: #424141!important;*/
	width: 100%;
	height: 100%;
	z-index: 91;
	}
.bs_datatables_table_1 {
	min-height: 120px; 
	}
.bs_datatables_table_2 {
	position: absolute; 
	left: 0px; 
	top: 0px; 
	width: 100px; 
	height: 120px;
	/*box-shadow: 2px 3px 10px 2px #2B2B2B; */
	z-index: 99;
	}
.bs_datatables_table_3 {
 	position: absolute; 
	top: 0px; 
	left: 4px;
	}
.bs_datatables_table_4 {
	position: absolute;
	left: 110px; 
	top: 3px; 
	width: calc(100% - 120px); 
	height: 70px; 
	z-index: 98;
	}
.bs_datatables_table_5 {
	/*box-shadow: 5px 3px 10px 2px #343434;*/
	margin-top: 0px;
	margin-bottom: 0px;
	z-index: 90;
	width: 100%;
	height: 100%;
	transition: 600ms ease-in;
	/*background-color:#3D3D3D; */
	padding: 5px; 
	min-height: 50px
	}
.bs_datatables_table_5:hover {
	/*background-color: #5F4B36!important;*/
	}


.bs23_span_link_1 {
	width: 100%; 
	height: 100%; 
	position: absolute; 
	left: 0px; 
	top:0px;  
	z-index: 92;
	}

/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  */
/* Text & Labels */











/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* Input & dropdowns*/
input  {
	font-family: abel, sans-serif;
	}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
/*transition: background-color 50000s ease-in-out 0s, color 5000s ease-in-out 0s;	*/
}


/* Chrome Anpassungen*/
input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  /*border: 1px solid #636363;
  -webkit-text-fill-color: #FF931E;
  -webkit-box-shadow: 0 0 0px 1000px #464646 inset;
  transition: background-color 5000s ease-in-out 0s;*/
}

progress {
	background-color: #424141;
	border: 1px solid #636363;
	}
progres::-moz-progress-bar {
  background-color: red;
}
textarea:focus, input:focus, button:focus{ 
    outline: none; 
}
*,
*::before,
*::after {
  box-sizing: border-box;
}

.bs_dropdown_1 {
	-moz-appearance: none;
	-webkit-appearance: none;
	color: rgba(23,23,23,1.00);
	appearance: none;
	width: 100%;
	/*width: calc(100% + 4px);*/
  	height: 29px;
	outline: none;
	text-align: left;
	padding-left: 5px;
	padding-right: 15px;
	padding-top: 2px;
	padding-bottom: 2px;
	margin: 0px;
    background:  rgba(255,255,255,0.17);
	/* box-shadow: rgba(0, 0, 0, 0.03) 0px 4px 12px;*/
	border: 1px solid rgba(255,255,255,0.00);
	transition: all 0.3s ease-in-out;
	/*z-index: 9999;*/
    }
.bs_dropdown_1::-ms-expand {
    display: none;
    }
.bs_dropdown_1 option {
	color: rgba(23,23,23,1.00)!important;
	background-color:rgba(255,255,255,1.00);
	border: none!important;
    }
.bs_dropdown_1 option:hover {

    }
.bs_dropdown_1 option:checked{

	}

.bs_dropdown_1 option:disabled {
	color: #525252!important;	
	background-color: #F5F5F5;
    }
.bs_dropdown_1:focus::-ms-value {
	background:  rgba(173,173,173,1.00);
    }
.bs_dropdown_1 {
      /* ... */
    cursor: pointer;
    }
.bs_dropdown_1:focus{
	transition: all 0.3s ease-in-out;
	}
.bs_dropdown_1:hover{
	border:1px solid #FF931E;
	}
.bs_dropdown_1[readonly]{
	color: #525252!important;	
	background-color: #F5F5F5;	
	}

.bs_dropdown_1:disabled{
	color: #525252!important;
	background-color: #F5F5F5;;
	}
.bs_dropdown_1:disabled:hover{
	border: 1px solid rgba(255,255,255,0.00);
	}
.bs_dropdown_1::hover[readonly]{
	border: 1px solid rgba(255,255,255,0.00);
	}
.bs_dropdown_1::placeholder[readonly]{
	color: #525252; 
	}
.bs_dropdown_1:disabled:placeholder{
	color: #525252; 
	}
.bs_dropdown_1:-webkit-autofill,
.bs_dropdown_1:-webkit-autofill:hover, 
.bs_dropdown_1:-webkit-autofill:focus, 
.bs_dropdown_1:-webkit-autofill:active{

  	-webkit-box-shadow: 0 0 0px 1000px #FFFFFF inset;
	border: 1px solid rgba(255,255,255,0.00);
	-webkit-text-fill-color:rgba(23,23,23,1.00);
}
.bs_dropdown_1:-webkit-autofill:hover{
  -webkit-box-shadow: 0 0 0px 1000px #FFFFFF inset;
	border:1px solid #FF931E;
	transition: all 0.3s ease-in-out;
}




.bs_dropdown_1::placeholder{
	vertical-align: bottom;
	color: rgba(23,23,23,1.00);
	}

.bs_dropdown_1[readonly]{
	border: 1px solid rgba(82,82,82,0.00)!important;
	}
.bs_dropdown_1:disabled{
	border: 1px solid rgba(82,82,82,0.00)!important;
	}
.bs_dropdown_marked_green {
	background-color: rgba(198,220,202,1.00)!important;
	}
.bs_dropdown_marked_red {
	background-color: rgba(220,198,198,1.00)!important;
	}
.bs_dropdown_marked_1 {
	border: 1px solid #525252!important;
	}
.bs_dropdown_marked_2 {
	border: 1px solid #525252!important;
	background-color: white;
	}
.bs_dropdown_1d {
	-moz-appearance: none;
	-webkit-appearance: none;
	color: #A4A4A4;
	appearance: none;
	width: calc(100% + 4px);
  	height: 25px;
  	background: #464646;
	outline: none;
	text-align: left;
	padding: 0px;
	padding-left: 5px;
	margin: 0px;
	border-right: 1px solid #636363;
	border-top: 1px solid #636363;
	border-bottom: 1px solid #636363;
	border-left: 1px solid #636363;
	padding-right: 15px;
	box-shadow: 1px 2px 5px 3px #3D3D3D;
    }
.bs_dropdown_1d option {
    color: #FFFFFF;
	background-color:#4B4B4B;
    }
.bs_dropdown_1d:focus::-ms-value {
   	background-color: #4B4B4B;
    }
.bs_dropdown_1d {
      /* ... */
    cursor: pointer;
    }
.bs_dropdown_1d:focus{
	border:1px solid #FF931E;
	transition: all 0.3s ease-in-out;
	}
.bs_dropdown_1d:hover{
	border:1px solid #FF931E;
	transition: all 0.3s ease-in-out;
	background-color: #7B6A58;
	color: #FFFFFF;
	}
.bs_dropdown_1d:disabled{
	transition: all 0.3s ease-in-out;
  	background: #464646;
	color: #A4A4A4; 
	}
.bs_dropdown_1d:disabled:hover{
	color: #A4A4A4; 
	border:1px solid #636363;
	transition: all 0.3s ease-in-out;
	background: #464646;
	}
.bs_dropdown_2 {
	-moz-appearance: none;
	-webkit-appearance: none;
	color: rgba(23,23,23,1.00);
	appearance: none;
	width: calc(100% + 3px);
  	height: 25px;
  	background: #464646;
	outline: none;
	text-align: left;
	padding: 0px;
	padding-left: 1px;
	margin: 0px;
	border-right: 1px solid #FF931E;
	border-top: 1px solid #FF931E;
	border-bottom: 1px solid #FF931E;
	border-left: 1px solid #FF931E;
	padding-right: 15px;
	box-shadow: 1px 2px 5px 3px #3D3D3D;
    }
.bs_dropdown_2::-ms-expand {
    display: none;
    }
.bs_dropdown_2 option {
    color: #FFFFFF;
	background-color:#4B4B4B;
    }
.bs_dropdown_2:focus::-ms-value {
   	background-color: #4B4B4B;
    }
.bs_dropdown_2 {
      /* ... */
    cursor: pointer;
    }
.bs_dropdown_2:focus{
	border:1px solid #FF931E;
	transition: all 0.3s ease-in-out;
	}
.bs_dropdown_2:hover{
	border:1px solid #FF931E;
	transition: all 0.3s ease-in-out;
	background-color: #7B6A58;
	color: #FFFFFF;
	}
.bs_dropdown_2:disabled{
	transition: all 0.3s ease-in-out;
  	background: #464646;
	color: #A4A4A4; 
	}
.bs_dropdown_2:disabled:hover{
	color: #A4A4A4; 
	border:1px solid #FF931E;
	transition: all 0.3s ease-in-out;
	background: #464646;
	}	
.bs_obligation_1::placeholder{
	background-image: url("/images/icon_obligation_1.svg");
	background-position: right top;
	background-repeat: no-repeat;
		background-size: 5px 5px;
	}
.bs_obligation_2 {
	position: relative; 
	height: 100%; 
	width: 100%; 
	}
.bs_obligation_input_1 {
	position: absolute;
	right: 2px; 
	top: 2px;
	width: 10px;
	height: 10px;
	background-image: url("/images/icon_obligation_1.svg")!important;
	background-position: right top!important;
	background-repeat: no-repeat!important;
	background-size: 5px 5px;
	}
.bs_obligation_select2_1 {
	position: absolute;
	right: -1px; 
	top: 2px;
	width: 10px;
	height: 10px;
	background-image: url("/images/icon_obligation_1.svg")!important;
	background-position: right top!important;
	background-repeat: no-repeat!important;
	background-size: 5px 5px;
	}
.bs_obligation_area_1 {
	position: absolute;
	right: -2px; 
	top: 2px;
	width: 10px;
	height: 10px;
	background-image: url("/images/icon_obligation_1.svg")!important;
	background-position: right top!important;
	background-repeat: no-repeat!important;
	background-size: 5px 5px;
	}
input[type=range].bs_range_1 {
  width: 100%;
  margin: 13.8px 0;
  background-color: transparent;
  -webkit-appearance: none;
}
input[type=range].bs_range_1:focus {
  outline: none;
}
input[type=range].bs_range_1::-webkit-slider-runnable-track {
  background: #464646;
  border: 0.2px solid #636363;
  border-radius: 1.3px;
  width: 100%;
  height: 8.4px;
  cursor: pointer;
}
input[type=range].bs_range_1::-webkit-slider-thumb {
  margin-top: -6.5px;
  width: 8px;
  height: 20px;
  background: #ff931e;
  border: 1px solid #ff931e;
  border-radius: 3px;
  cursor: pointer;
  -webkit-appearance: none;
}
input[type=range].bs_range_1:focus::-webkit-slider-runnable-track {
  background: #535353;
}
input[type=range].bs_range_1::-moz-range-track {
  background: #464646;
  border: 0.2px solid #636363;
  border-radius: 1.3px;
  width: 100%;
  height: 8.4px;
  cursor: pointer;
}
input[type=range].bs_range_1::-moz-range-thumb {
  width: 16px;
  height: 36px;
  background: #ff931e;
  border: 1px solid #ff931e;
  border-radius: 3px;
  cursor: pointer;
}
input[type=range].bs_range_1::-ms-track {
  background: transparent;
  border-color: transparent;
  border-width: 14.8px 0;
  color: transparent;
  width: 100%;
  height: 8.4px;
  cursor: pointer;
}
input[type=range].bs_range_1::-ms-fill-lower {
  background: #393939;
  border: 0.2px solid #636363;
  border-radius: 2.6px;
}
input[type=range].bs_range_1::-ms-fill-upper {
  background: #464646;
  border: 0.2px solid #636363;
  border-radius: 2.6px;
}
input[type=range].bs_range_1::-ms-thumb {
  width: 16px;
  height: 36px;
  background: #ff931e;
  border: 1px solid #ff931e;
  border-radius: 3px;
  cursor: pointer;
  margin-top: 0px;
  /*Needed to keep the Edge thumb centred*/
}
input[type=range].bs_range_1:focus::-ms-fill-lower {
  background: #464646;
}
input[type=range].bs_range_1:focus::-ms-fill-upper {
  background: #535353;
}
/*TODO: Use one of the selectors from https://stackoverflow.com/a/20541859/7077589 and figure out
how to remove the virtical space around the range input in IE*/
@supports (-ms-ime-align:auto) {
  /* Pre-Chromium Edge only styles, selector taken from hhttps://stackoverflow.com/a/32202953/7077589 */
  input[type=range].bs_range_1 {
    margin: 0;
    /*Edge starts the margin from the thumb, not the track as other browsers do*/
  }
}


.xdsoft_datetimepicker {
	box-shadow: 1px 2px 5px 3px #3D3D3D;
	background: #464646;
	border-bottom: 1px solid #3D3D3D;
	border-left: 1px solid #3D3D3D;
	border-right: 1px solid #3D3D3D;
	border-top: 1px solid #3D3D3D;
	color: #FFFFFF;
	font-family: abel, sans-serif;
	padding: 8px;
	padding-left: 0;
	padding-top: 2px;
	position: absolute;
	z-index: 9999;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: none;
}
.bs23_input_1_datapicker {
	width: calc(100% - 5px);
	text-align: left;
	font-family: abel, sans-serif;
	color: rgba(23,23,23,1.00);
    background:  #464646;
	border-right: 1px solid #636363;
	border-top: 1px solid #636363;
	border-bottom: 1px solid #636363;
	border-left: 1px solid #636363;
	transition: all 0.3s ease-in-out;
	padding-left: 5px;
	box-shadow: 1px 2px 5px 3px #3D3D3D;
	}

.bs_text_area_1 {
	width: calc(100% - 5px);
	height: auto;
	text-align: left;
	padding-left: 5px;
	resize: none;
	font-family: abel, sans-serif;
	color: rgba(23,23,23,1.00);
    background:  rgba(255,255,255,0.17);
	/*box-shadow: rgba(0,0,0,0.19) 0px 4px 12px;*/
	border: 1px solid #CDCCCC;
	border-radius: 3px;
	transition: all 0.3s ease-in-out;
	}
.bs_text_area_1:hover{
	border:1px solid #FF931E;
	transition: all 0.3s ease-in-out;
	}
.bs_text_area_1:focus{
	border:1px solid #FF931E;
	transition: all 0.3s ease-in-out;
	}
.bs_text_area_1:disabled{
	color: #606060;
	background-color: #F5F5F5;
	}
.bs_text_area_1[readonly]{
	color: #606060;
	background-color: #F5F5F5;
	}
.bs_text_area_1:disabled:hover{
	border: 1px solid #636363;
	}
.bs_text_area_1[readonly]:hover{
	border: 1px solid #636363;
	}
.bs_text_area_1:disabled:focus{
	border: 1px solid #636363;
	}
.bs_text_area_1[readonly]:focus{
	border: 1px solid #636363;
	}
.bs_text_area_1::placeholder{
	vertical-align: bottom;
	color: rgba(23,23,23,1.00);
	font-style: italic;
	}
.bs_text_area_1[readonly]::placeholder{
	color: #606060;

	}
	
.bs_text_area_1:disabled::-webkit-input-placeholder { /* WebKit browsers */
    color:    #606060;
}
.bs_text_area_1:disabled:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color:    #606060;
}
.bs_text_area_1:disabled::-moz-placeholder { /* Mozilla Firefox 19+ */
    color:    #606060;
}
.bs_text_area_1:disabled:-ms-input-placeholder { /* Internet Explorer 10+ */
    color:    #606060;
}
.bs_text_area_1_marked:disabled{
	color: #000000;
	}
.bs_text_area_1_red_marked{
	border-color: rgba(155,0,0,1.00)!important; 
	color: rgba(155,0,0,1.00)!important; 
	}
.bs_text_area_1_red_marked::placeholder{
	color: rgba(155,0,0,1.00)!important; 
	}
.bs_hidden {
	color: #4B4B4B;
	font-size:0px;
	}

/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */

.bs_button_image_1 button{
    color: inherit;
    border: 5px solid green;
    padding: 0;
    font: inherit;
    cursor: pointer;
    outline: inherit;
}

.bs_button_close_2 {
	background-image: url("../images/button_close_2.svg");
	background-size: 20px 20px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 20px;
	height: 20px;
	border: none;
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 0px;
	padding-top:0px;
	}
.bs_button_close_2:hover{
	background-image: url("../images/button_close_2b.svg");
	background-color: transparent;
	}
.bs_button_close_2d {
	background-image: url("../images/button_close_2.svg");
	background-size: 18px 18px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 18px;
	height: 18px;
	border: none;
	padding-left: 9px;
	padding-right: 9px;
	padding-bottom: 0px;
	padding-top:0px;
	}
.bs_button_close_3 {
	background-image: url("../images/button_close_3.svg");
	background-size: 18px 18px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 18px;
	height: 18px;
	border: none;
	padding-left: 9px;
	padding-right: 9px;
	padding-bottom: 0px;
	padding-top:0px;
	}
.bs_button_close_3:hover{
	background-image: url("../images/button_close_3b.svg");
	}
.bs_button_close_4 {
	background-image: url("../images/button_close_4.svg");
	background-size: 18px 18px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 18px;
	height: 18px;
	border: none;
	padding-left: 9px;
	padding-right: 9px;
	padding-bottom: 0px;
	padding-top:0px;
	}
.bs_button_close_4:hover{
	background-image: url("../images/button_close_4b.svg");
	}
.bs_button_close_5 {
	background-image: url("../images/button_close_5.svg");
	background-size: 18px 18px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 18px;
	height: 18px;
	border: none;
	padding-left: 9px;
	padding-right: 9px;
	padding-bottom: 0px;
	padding-top:0px;
	}
.bs_button_close_5:hover{
	background-image: url("../images/button_close_5b.svg");
	}
.bs_button_reload_1 {
	background-image: url("../images/button_reload_1b.png");
	}
.bs_button_reload_1:hover{
	background-image: url("../images/button_reload_1c.png");
	}
.bs_button_reload_2 {
	background-image: url("../images/button_message_8.svg");	
	background-size: 18px 18px;
	background-repeat: no-repeat;
	background-color: transparent;
	background-position: center;
	width: 18px;
	height: 18px;
	padding-left: 9px;
	padding-right: 9px;
	padding-bottom: 0px;
	padding-top:0px;
	border: 1px solid #343434;
	}
.bs_button_reload_2:hover {
	background-color: #343434;
	}
.bs_button_more_1 {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
  	background-image: url("../images/button_menu_1.svg");
	background-size: auto;
	background-repeat: no-repeat;
	background-color: transparent;
	background-position: center;
	text-align: center;
	outline: none;
	margin: 0px;
	border: 1px solid #393939;
	padding:2px 20px 2px 20px;
	color: #FFFFFF;
	font-size: 12px;
	}
.bs_button_more_1:hover{
  	background-color: #37A9E5; 
	border-color:#37A9E5; 
  	background-image: url("../images/button_menu_2.svg");
	}
.bs_button_more_2 {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
  	background-image: url("../images/button_menu_2.svg");
	background-size: auto;
	background-repeat: no-repeat;
	background-color: rgba(255,255,255,0.00)!important;
	background-position: center;
	text-align: top;
	outline: none;
	margin: 0px;
	padding:15px!important;
	color: #FFFFFF;
	font-size: 15px;
	height: 15px!important;
	width: 15px!important;
	border: 1px solid transparent!important;
	}
.bs_button_more_2:hover{
  	background-image: url("../images/button_menu_4.svg");
	background-color: rgba(255,255,255,0.00)!important;
	border: 1px solid transparent!important;
	}
.bs_button_more_3 {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
  	background-image: url("../images/button_menu_2.svg");
	background-size: cover;
	background-repeat: no-repeat;
	background-color: rgba(255,255,255,0.00)!important;
	background-position: center;
	outline: none;
	margin: 0px;
	padding: 0px!important;
	color: #FFFFFF;
	font-size: 0px;
	height: 27px!important;
	width: 27px!important;
	border: 1px solid transparent!important;
	display: block;
	}
.bs_button_more_3:hover{
  	background-image: url("../images/button_menu_4.svg");
	background-color: rgba(255,255,255,0.00)!important;
	border: 1px solid transparent!important;
	}






.bs_button_popup_help_1 {
	text-align: center;
	font-family: abel, sans-serif;
	font-size: 16px;
	color: #FFFFFF;
    background:#393939;
	border-left:10px solid #393939;
	border-right: 10px solid #393939;
	border-bottom: 3px solid #393939;
	border-top: 3px solid #393939;
	border-radius: 0px;
	text-decoration: none;
	padding: 0px;	
	}
.bs_button_popup_help_1:hover{
  	background-color:#FF931E;
	color: #454545;
	border-color: #FF931E;
	}













.bs_button_11{
	font-family: abel, sans-serif;
	font-size: 10px;
	color: #A4A4A4;
	text-align: center;
    background:#4B4B4B;
	padding: 0px 7px 0px 7px;
	margin: 5px 2px 0px 0px;
	border-radius: 2px;
	text-decoration: none;
	border: 1px solid #343434;
	}
.bs_button_11:hover{
	color: #3A3A3A;
    background:#FF931E;
	border:1px solid #FF931E;
	}
.bs_button_project_1{
	background-image: url("../images/icon_project_1b.svg"); 
	background-repeat: no-repeat; 
	background-position: center; 
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 30px;
	padding-bottom: 30px;
	}
.bs_button_project_1:hover{
  	background-image: url("../images/icon_project_1.svg"); 
	}
.bs_button_project_2{
	background-image: url("../images/icon_project_1b.svg"); 
	background-repeat: no-repeat; 
	background-position: center; 
	padding-left: 14px;
	padding-right: 14px;
	padding-top: 25px;
	padding-bottom: 25px;
	}
.bs_button_project_2:hover{
  	background-image: url("../images/icon_project_1.svg"); 
	}

.bs_button_info_2 {
	background-image: url("../images/button_info_3.svg");
	background-size: 14px 14px;
	background-repeat: no-repeat;
	background-color: transparent;
	background-position: center center;
	border: none;
	height: 14px;
	width: 14px;
	padding-left: 7px;
	padding-right: 7px;
	padding-bottom: 0px;
	padding-top:0px;
	}
.bs_button_info_3 {
	background-image: url("../images/button_info_3.svg");
	background-size: 16px 16px;
	background-repeat: no-repeat;
	background-color: transparent;
	background-position: center center;
	border: 0px;
	height: 16px;
	width: 16px;
	padding-left: 8px;
	padding-right: 8px;
	}
.bs_button_info_3:hover {
	background-image: url("../images/button_info_3b.svg");
	}
.bs_button_info_3d {
	background-image: url("../images/button_info_1c.svg");
	background-size: 16px 16px;
	background-repeat: no-repeat;
	background-color: transparent;
	background-position: center center;
	border: 0px;
	height: 16px;
	width: 16px;
	padding-left: 8px;
	padding-right: 8px;
	}
.bs_button_info_3d:hover {
	background-image: url("../images/button_info_1c.svg");
	}
.bs_button_questionmark_1 {
	background-image: url("../images/button_questionmark_1.svg");	
	background-size: 14px 14px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 14px;
	height: 14px;
	border: none;
	padding-left: 7px;
	padding-right: 7px;
	}
.bs_button_questionmark_1:hover{
	background-image: url("../images/button_questionmark_1b.svg");
	}
.bs_button_alert_1 {
	background-image: url("../images/button_alert_1.svg");	
	}
.bs_button_alert_2 {
	background-image: url("../images/button_alert_1.svg");	
	background-size: 60px 60px;
	background-repeat: no-repeat;
	background-color:transparent;
	background-position: center center;
	width: 60px;
	height: 60px;
	border: none;
	padding-left: 30px;
	padding-right: 30px;
	padding-bottom: 30px;
	padding-top:30px;
	}
.bs_button_alert_3 {
	background-image: url("../images/button_alert_2.svg");	
	background-size: 14px 14px;
	background-repeat: no-repeat;
	background-color:transparent;
	background-position: center center;
	width: 14px;
	height: 14px;
	border: none;
	padding-left: 7px;
	padding-right: 7px;
	padding-bottom: 0px;
	padding-top:0px;
	}
.bs_button_alert_4 {
	background-image: url("../images/button_alert_1.svg");	
	background-size: 16px 16px;
	background-repeat: no-repeat;
	background-color:transparent;
	background-position: center center;
	width: 16px;
	height: 16px;
	border: none;
	padding-left: 8px;
	padding-right: 8px;
	padding-bottom: 0px;
	padding-top:0px;
	}
.bs_button_success_1 {
	background-image: url("../images/button_success_1.svg");	
	}
.bs_button_success_2 {
	background-image: url("../images/button_success_2.svg");	
	background-size: 60px 60px;
	background-repeat: no-repeat;
	background-color:transparent;
	background-position: center center;
	width: 60px;
	height: 60px;
	border: none;
	padding-left: 30px;
	padding-right: 30px;
	padding-bottom: 30px;
	padding-top:30px;
	 
	}
.bs_button_plus_1 {
	background-image: url("../images/button_plus_1.svg");	
	background-size: 14px 14px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 14px;
	height: 14px;
	border: 0px;
	padding-left: 7px;
	padding-right: 7px;
	}
.button_plus_1:hover{
	background-image: url("../images/button_plus_1b.svg");
	}
.bs_button_plus_2 {
	background-image: url("../images/button_plus_2b.svg");	
	background-size: 16px 16px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 16px;
	height: 16px;
	border: 0px;
	padding-left: 8px;
	padding-right: 8px;
	}
.bs_button_plus_2:hover{
	background-image: url("../images/button_plus_3b.svg");
	}
.bs_button_add_1 {
	background-image: url("../images/button_add_1.svg");	
	background-size: 30px;
	background-repeat: no-repeat;
	background-color: #FF931E;
	background-position: center;
	width: 14px;
	height: 25px;
	border: 0px;
	padding-left: 25px;
	padding-right: 25px;
	border-radius: 1px;
	padding-top:1px;
	padding-bottom: 1px;
	}
.bs_button_add_1:hover{
	  	background-color:  #DB9B56;
	border-color: #DB9B56;
	}
.bs_button_add_2 {
	background-image: url("../images/button_add_3.svg");	
	background-size: 30px;
	background-repeat: no-repeat;
	background-color: #FFFFFF;
	background-position: center;
	border: 1px dashed #72AE74;
	border-radius: 3px;
	width: 14px;
	height: 25px;
	padding-left: 25px;
	padding-right: 25px;
	padding-top:1px;
	padding-bottom: 1px;
	}
.bs_button_add_2:hover{
	 background-color:  #72AE74;
	border-color: #72AE74;
	background-image: url("../images/button_add_5.svg");
	}
.bs_button_edit_1 {
	background-image: url("../images/button_edit_1.svg");
	background-size: 18px 18px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 18px;
	height: 18px;
	border: none;
	padding-left: 9px;
	padding-right: 9px;
	padding-bottom: 0px;
	padding-top:0px;
	}
.bs_button_edit_1:hover{
	background-image: url("../images/button_edit_1b.svg");
		}

.bs_button_popup_close_2 {
	background-image: url("../images/button_close_1c.svg");
	background-size: 18px 18px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 18px;
	height: 18px;
	border: none;
	padding-left: 9px;
	padding-right: 9px;
	padding-bottom: 0px;
	padding-top:0px;
	}
.bs_button_popup_close_2:hover{
	background-image: url("../images/button_close_2b.svg");
	}
.bs23_button_popup_video_close_1 {
	background-image: url("../images/button_close_3.svg");
	}
.bs23_button_popup_video_close_1:hover{
	background-image: url("../images/button_close_2b.svg");
	}
.bs_button_help_1{
	background-image: url("../images/button_help_1.svg");
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center center;
	border: 0px;
	height: 20px;
	width: 20px;
	padding-left: 10px;
	padding-right: 10px;
	position: absolute;

	}
.bs23_button_help_4 {
	background-image: url("../images/icon_help_1.svg");
	background-size: 12px 12px;
	background-repeat: no-repeat;
	background-color: transparent;
	width: 12px;
	height: 12px;
	border: none;
	padding-left: 6px;
	padding-right: 6px;
	padding-bottom: 0px;
	padding-top:0px;
	margin-left: 5px;
	margin-top: 3px;
	}
.bs23_button_help_4:hover{
	background-image: url("../images/icon_help_1b.svg");
	}
.bs_button_transparent_1 {
	background-color:transparent;
	background-position: center center;
	width: 14px;
	height: 14px;
	border: none;
	padding-left: 7px;
	padding-right: 7px;
	padding-bottom: 0px;
	padding-top:0px;
	}	


  /* Customize the label (the container) */
.bs_button_checkbox_1 {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 0px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default checkbox */
.bs_button_checkbox_1 input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */
.bs_button_checkbox_1_check {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px; 
  background: rgba(255,255,255,0.00);
  border:1px solid #FF931E;
  margin-left: 0px;
	border-radius: 5px;
}

/* On mouse-over, add a grey background color */
.bs_button_checkbox_1:hover input ~ .bs_button_checkbox_1_check {
  
}

/* When the checkbox is checked, add a blue background */
.bs_button_checkbox_1 input:checked ~ .bs_button_checkbox_1_check {
  background-image: url("../images/checkbox_3a.svg");
}

/* Create the checkmark/indicator (hidden when not checked) */
.bs_button_checkbox_1_check:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.bs_button_checkbox_1 input:checked ~ .bs_button_checkbox_1_check:after {
  background-image: url("../images/checkbox_3a.svg");
}


.bs_button_checkbox_1 input:not(:checked)[readonly] ~ .bs_button_checkbox_1_check {
  	border:1px solid #A4A4A4;
	background-color: #F5F5F5;
}
.bs_button_checkbox_1 input:checked[readonly] ~ .bs_button_checkbox_1_check {
  	border:1px solid #A4A4A4;
	background-color: #464646;
}		
.bs_button_checkbox_1 input:disabled:not(:checked) ~ .bs_button_checkbox_1_check {
  	border:1px solid #A4A4A4;
	background: rgba(255,255,255,0.00);
}
.bs_button_checkbox_1 input:disabled:checked ~ .bs_button_checkbox_1_check {
  	border:1px solid #A4A4A4;
  	background: rgba(255,255,255,0.00);
	background-image: url("../images/checkbox_3b.svg");
}	

.bs_button_checkbox_1:hover input:not(:checked)[readonly] ~ .bs_button_checkbox_1_check {
  	border:1px solid #A4A4A4;
  	background: rgba(255,255,255,0.00);
}
.bs_button_checkbox_1:hover input:checked[readonly] ~ .bs_button_checkbox_1_check {
  	border:1px solid #A4A4A4;
  	background: rgba(255,255,255,0.00);
}

.bs_button_checkbox_1:hover input:disabled:not(:checked) ~ .bs_button_checkbox_1_check {
  	border:1px solid #A4A4A4;
  	background: rgba(255,255,255,0.00);
}
.bs_button_checkbox_1:hover input:disabled:checked ~ .bs_button_checkbox_1_check {
  	border:1px solid #A4A4A4;
  	background: rgba(255,255,255,0.00);
	background-image: url("../images/checkbox_3b.svg");
}


/* Style the checkmark/indicator */
.bs_button_checkbox_1 .bs_button_checkbox_1_check:after {
  left: 4px;
  top: 0px;
  width: 4px;
  height: 8px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
} 
.bs_button_checkbox_2 {
  display: block;
  position: relative;
  padding-left: 15px;
  margin-bottom: 0px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
/* Hide the browser's default checkbox */
.bs_button_checkbox_2 input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
/* Create a custom checkbox */
.bs_button_checkbox_2_check {
  	position: absolute;
  	top: -15px;
 	left: 0px;
  	height: 30px;
  	width: 30px;
  	background: #424141;
  	border:2px solid transparent;
  	margin-left: 0px;
	background-color: transparent;
	background-image: url("../images/checkbox_1b.svg");
	background-size: auto;
	background-repeat: no-repeat;
	background-position:center; 
}
.bs_button_checkbox_2 input:not(:checked)[readonly] ~ .bs_button_checkbox_2_check {
	background-image: url("../images/checkbox_1d.svg");
}
.bs_button_checkbox_2 input:checked[readonly] ~ .bs_button_checkbox_2_check {
	background-image: url("../images/checkbox_1d.svg");
}		
.bs_button_checkbox_2 input:disabled:not(:checked) ~ .bs_button_checkbox_2_check {
	background-image: url("../images/checkbox_1d.svg");
}
.bs_button_checkbox_2 input:disabled:checked ~ .bs_button_checkbox_2_check {
	background-image: url("../images/checkbox_1d.svg");
}	

/* On mouse-over, add a grey background color */
.bs_button_checkbox_2:hover input ~ .bs_button_checkbox_2_check {
  	border:2px solid #FC8815;	
}

/* When the checkbox is checked, add a blue background */
.bs_button_checkbox_2 input:checked ~ .bs_button_checkbox_2_check {
	background-image: url("../images/checkbox_1.svg");
}
/* Create the checkmark/indicator (hidden when not checked) */
.bs_button_checkbox_2_check:after {
  content: "";
  position: absolute;
  display: none;
}
/* Show the checkmark when checked */
.bs_button_checkbox_2 input:checked ~ .bs_button_checkbox_2_check:after {
  display: block;	
}
/* Style the checkmark/indicator */
.bs_button_checkbox_2 .bs_button_checkbox_2_check:after {
}

.bs_button_checkbox_4 {
  display: block;
  position: relative;
  padding-left: 15px;
  margin-bottom: 0px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default checkbox */
.bs_button_checkbox_4 input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */
.bs_button_checkbox_4_check {
  position: absolute;
  top: 0;
  left: 0;
  height: 15px;
  width: 15px;
  background: #464646;
  border:1px solid #5A9E5B; 
margin-left: 0px;
}

/* On mouse-over, add a grey background color */
.bs_button_checkbox_4:hover input ~ .bs_button_checkbox_4_check {
  background-color: #4F6F4F;
}

/* When the checkbox is checked, add a blue background */
.bs_button_checkbox_4 input:checked ~ .bs_button_checkbox_4_check {
  background-color: #5A9E5B; 
}
.bs_button_checkbox_4 input:not(:checked)[readonly] ~ .bs_button_checkbox_4_check {
  	border:1px solid #636363;
}

.bs_button_checkbox_4:hover input:not(:checked)[readonly] ~ .bs_button_checkbox_4_check {
  	background: #464646;
}
.bs_button_checkbox_4 input:checked[readonly] ~ .bs_button_checkbox_4_check {
 	border:1px solid #636363;
}	
/* Create the checkmark/indicator (hidden when not checked) */
.bs_button_checkbox_4_check:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.bs_button_checkbox_4 input:checked ~ .bs_button_checkbox_4_check:after {
  display: block;
}

/* Style the checkmark/indicator */
.bs_button_checkbox_4 .bs_button_checkbox_4_check:after {
  left: 4px;
  top: 0px;
  width: 4px;
  height: 8px;
  border: solid white;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
} 
.dt-button.bs_button_datatables_1 {
	text-align: center;
	font-family: abel, sans-serif;
	font-size: 12px;
	color: #FFFFFF;
    background:#393939;
	border-left:10px solid #393939;
	border-right: 10px solid #393939;
	border-bottom: 3px solid #393939;
	border-top: 3px solid #393939;
	border-radius: 1px;
	margin-bottom: 5px;
	text-decoration: none;
	padding: 0px;
	margin-top:5px;
	margin-left:5px;
	}
.dt-button.bs_button_datatables_1:hover{
  	background-color:#FF931E;
	color: #454545;
	border-color: #FF931E;
	}

.bs_image_1 {
  width: 400px;
height: 280px;
} 
.bs_image_2  {
	width: 110px;
	height:110px;
	border-radius: 100%;
	-moz-border-radius: 100%;
	-webkit-border-radius: 100%;
	box-shadow: 1px 3px 5px 3px #B4B4B4;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}


.bs_image_4  {
	max-width: 100%;
	max-height: 100%;
	background-color:white;
	background-repeat: no-repeat;
    background-position: center center;  
	background-size: 100%;
	border-radius: 5px;
	padding: 0px;
}
.bs_box_menu_1 {
	border-bottom: 1px solid #343434;
	border-top: 1px solid #4B4B4B;
}
.bs_box_menu_2 {
	border-left: 1px solid #343434;
	border-right: 1px solid #343434;
	border-top: 1px solid #343434;
	border-bottom:1px solid #424141; 
	background-color: #424141 !important;
}
.bs_box_menu_3 {
	border-left: 1px solid #3E3E3E;
	border-right: 1px solid #3E3E3E;
	border-top: 1px solid #3E3E3E;
	border-bottom:1px solid #343434; 
	background-color: #464646 !important;
}
.bs_box_menu_3:hover {
	border-left: 1px solid #343434;
	border-right: 1px solid #343434;
	border-top: 1px solid #343434;
	border-bottom:1px solid #343434; 
	background-color: #424141 !important;
}
.bs_box_menu_20 {
	width: 100%; 
	border-collapse: collapse;
	background-color:#424141;
	border-bottom:  none;
}
.bs_box_menu_30 {
	width: 100%; 
	background-color:#424141;
	border-collapse: collapse;
}
.bs_box_menu_30 th{
	background-color: #4B4B4B;
	font-weight: normal;
}
.bs_box_menu_30 td:nth-child(1){
	border-left: 1px solid #343434;
	border-right: 1px solid #343434;
	border-bottom:  none;
}
.bs_box_menu_50 {
	width: 100%!important; 
	background-color:#424141;
	border-collapse: collapse;
	border-left:1px solid #343434;
	border-right:1px solid #343434;
	border-bottom:1px solid #343434;
}
@media (min-width: 0px){
	.menu_size_1 {
		display:none;
	}
	.menu_size_2 {
		display:block;
	}	
	.menu_size_3 {
		display:block;
	}		
	.menu_size_company_1 {
		display:none;
	}
	.menu_size_company_2 {
		display:block;
	}	
}	
@media (min-width: 450px){
	.menu_size_1 {
		display:block;
	}
	.menu_size_2 {
		display:none;
	}
	.menu_size_3 {
		display:none;
	}	
}
@media (min-width: 740px){
	.menu_size_company_1 {
		display:block;
	}
	.menu_size_company_2 {
		display:none;
	}	
}


.bs_image_loading_1  {
	width: 100px;
	height:100px;
	background-image: url("../images/loading.svg");
	background-repeat: no-repeat;
    background-position: center center;  
	background-size: 100%;
}
.bs_load_1,
.bs_load_1:after {
  box-sizing: border-box;
}
.bs_load_1 {
  display: inline-block;
  width: 100%;
  height: 100%;
}
.bs_load_1:after {
  content: " ";
  display: block;
  width: 100%;
  height: 100%;
  margin: 0px;
  border-radius: 50%;
  border: 15px solid currentColor;
  border-color: #FF931E transparent #FF931E transparent;
  animation: bs_load_1 1.2s linear infinite;
  transition: 0.5s;
	transition-timing-function: ease-in;
	transition-timing-function: ease-out;
}

@keyframes bs_load_1 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.bs_load_2,
.bs_load_2:after {
  box-sizing: border-box;
}
.bs_load_2 {
  display: inline-block;
  width: 100%;
  height: 100%;
}
.bs_load_2:after {
  content: " ";
  display: block;
  width: 100%;
  height: 100%;
  margin: 0px;
  border-radius: 50%;
  border: 15px solid currentColor;
  border-color: #AA1B1B transparent #AA1B1B transparent;
  animation: bs_load_1 1.2s linear infinite;
}

@keyframes bs_load_2 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* Div */
/* Verhindert roter Rahmen bei fehlender Eingabe */
:-moz-ui-invalid {
border:none;
  border: 1px solid #FF931E!important;	
}
/* Verhindert Pfeile bei Input mit zahlen */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Verhindert Pfeile bei Input mit zahlen */
input[type=number] {
  -moz-appearance: textfield;
}
span.select2-dropdown.select2-dropdown--below {
    z-index: 10000 !important;
}

.select2{
	width: calc(100% + 3px) !important;
	background:  rgba(255,255,255,1.00)!important;
	}



.select2.select2-container {
  width: 100% !important;
}

.select2.select2-container .select2-selection {
  border: 1px solid #ccc;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  height: 34px;
  /*margin-bottom: 15px;*/
  outline: none !important;
  transition: all .15s ease-in-out;
	
}

.select2.select2-container .select2-selection .select2-selection__rendered {
  color: #333;
  line-height: 32px;
  padding-right: 33px;
}

.select2.select2-container .select2-selection .select2-selection__arrow {
  background: #f8f8f8;
  border-left: 1px solid #ccc;
  -webkit-border-radius: 0 3px 3px 0;
  -moz-border-radius: 0 3px 3px 0;
  border-radius: 0 3px 3px 0;
  height: 32px;
  width: 33px;
}

.select2.select2-container.select2-container--open .select2-selection.select2-selection--single {
  background: #f8f8f8;
}

.select2.select2-container.select2-container--open .select2-selection.select2-selection--single .select2-selection__arrow {
  -webkit-border-radius: 0 3px 0 0;
  -moz-border-radius: 0 3px 0 0;
  border-radius: 0 3px 0 0;
}

.select2.select2-container.select2-container--open .select2-selection.select2-selection--multiple {
  border: 1px solid #34495e;
	
}

.select2.select2-container .select2-selection--multiple {
  height: auto;
  min-height: 34px;
}

.select2.select2-container .select2-selection--multiple .select2-search--inline .select2-search__field {
  margin-top: 0;
  height: 37px;
}

.select2.select2-container .select2-selection--multiple .select2-selection__rendered {
  display: block;
  padding: 0 4px;
  line-height: 34px;
}
/*@Marc1*/
.select2.select2-container .select2-selection--multiple .select2-selection__choice {
  background-color: #A7A7A7;
  border: 2px solid #A7A7A7;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  margin: 4px 4px 0 0;
  padding: 0 6px 0 25px;
  height: 28px;
  line-height: 24px;
  font-size: 20px;
  position: relative;
color: white;
	
}

.select2.select2-container .select2-selection--multiple .select2-selection__choice .select2-selection__choice__remove {
  position: absolute;
  top: 0;
  left: 0;
  height: 22px;
  width: 22px;
  margin: 0;
  text-align: center;
  color: #FFFFFF;
  font-weight: bold;
  font-size: 20px;
}

.select2-container .select2-dropdown {
  background: transparent;
  border: none;
  margin-top: -5px;
}

.select2-container .select2-dropdown .select2-search {
  padding: 0;
}

.select2-container .select2-dropdown .select2-search input {
  outline: none !important;
  border: 1px solid #34495e !important;
  border-bottom: none !important;
  padding: 4px 6px !important;
}

.select2-container .select2-dropdown .select2-results {
  padding: 0;
}

.select2-container .select2-dropdown .select2-results ul {
  background: #fff;
  border: 1px solid #34495e;
	
}

.select2-container .select2-dropdown .select2-results ul .select2-results__option--highlighted[aria-selected] {
  background-color: #3498db;
}
/* editable-select2 Dropdown */
.es-list{
	background:  rgba(255,255,255,1.00)!important;
	box-shadow: rgba(0,0,0,0.20) 0px 4px 5px!important;
	color: rgba(23,23,23,1.00)!important;
	border: 1px solid black!important;
	}
/* editable-select2 Dropdown */
.es-list li{
	background-color: #F5F5F5!important;
	box-shadow: none!important;
	color: #525252!important;
	border: none!important;
	font-size: 20px!important;
	}
.es-list li:hover{
	color:white!important;
	background:  #3997D3!important;
	}






























table.dataTable{
	font-family: abel, sans-serif !important;
	}
.dataTables_paginate{
	font-family: abel, sans-serif !important;
	}
.bs_box_datatables_01 {
	border-collapse: collapse!important;
	}
.bs_box_datatables_01 thead td {
    
	
	}
.bs_box_datatables_01 tbody td{
	padding-top: 2px!important;
	padding-bottom: 2px!important;
	}
.bs_box_datatables_01.dataTable.no-footer{
	border-bottom: none!important;
	}
.bs_box_datatables_01.dataTable thead td {
	border-bottom: 1px solid #7B090B;
	}
.bs_box_datatables_02 {
width: 100%; 
	box-shadow: 1px 2px 5px 3px #3D3D3D;padding-left: 2px; padding-right: 2px; 
}
.clearfix::after {
  content: "";
  clear: both;
  display: table;
}
.submenu_0 {
	position: relative; 
	width: calc(100% + 20px);
	margin-top: -10px; 
	margin-left: -10px; 
	margin-bottom: 30px;
		border-radius: 5px;
}	
.submenu_1 {
	float: left; 
	padding: 5px; 
	text-align: center;
	font-size: 12px;
	color: #FFFFFF; 
	text-decoration: none;
}	
.submenu_1 a {
	color: #FFFFFF; 
}	
.submenu_1 a:visited {
	color: #FFFFFF; 
}
.submenu_1 a:hover {
	color: #FFFFFF; 
}	
.submenu_1 a:link:hover {
	color: #FFFFFF; 
}	
.submenu_1 a:visited:hover {
	color: #FFFFFF; 
}

.submenu_2 {
	float: left; 
	background-color: #313131; 
	padding: 5px; 
	text-align: center;
	font-size: 12px;
	color: #C0C0C0; 
	text-decoration: none;

}		
.submenu_2:hover {
	background-color: #575757; 
	color: #FFFFFF; 
}	
.submenu_2 a {
	color: #C0C0C0; 
}	
.submenu_2 a:visited {
	color: #C0C0C0; 
}
.submenu_2 a:visited {
	color: #C0C0C0; 
}
.submenu_2:hover a {
	color: #FFFFFF; 
}	
.bs_box_overview_1 {
	float: left; 
	left: 0px;
	top: 0px;
	width: 50px;
	padding-left: 10px;
	padding-right: 10px;
	padding-top: 5px;
	padding-bottom: 5px;
	}	
.bs_box_overview_2 {
	position: relative;
	z-index: 99;
	height: 100%;
	width: 100%;
	}	
.bs_box_overview_3 {
	float: left; 
	left: 50px;
	top: 0px;
	max-width: calc(100% - 150px);
	width: auto;
	padding: 5px;
	z-index: 99;
	}
.bs_box_overview_4 {
	position: absolute;
	background-position: center;
	background-size: 80%;
	background-repeat: no-repeat;
	right: 0px;
	top: 0px;
	width: 80px;
	height: calc(100% - 10px);
	padding: 5px;
	z-index: 99;
	}
.bs_box_overview_5 {
	position: relative;
	z-index: 99;
	}	
.setclear { 
	clear: both; 
}	


.bs_box_overview_project_1 {
 	min-height: 70px; 
}
.bs_box_overview_project_2 {
	position: absolute; 
	left: 0px; 
	top: 0px; 
	width: 100px; 
	height: 70px;
	box-shadow: 2px 3px 10px 2px #2B2B2B; 
	z-index: 99;
}
.bs_box_overview_project_2b {
	position: absolute; 
	left: 0px; 
	top: 0px; 
	width: 100px; 
	min-height: 70px;
	z-index: 99;
}
.bs_box_overview_project_3 {
	position: absolute; 
	width: 100%; 
	height: 100%; 
	left:0px; 
	top:0px; 
	z-index:5;
}
.bs_box_overview_project_4 {
	float: left;
	left: 0px;
	top: 0px;
	width: 100%; 
	height: 100%;
	background-size: auto 100%;
	background-position: center;
	background-image: url('/images/visu.jpg');
}
.bs_box_overview_project_4b {
	float: left;
	left: 0px;
	top: 0px;
	width: 100%; 
	height: 100%;
}
.bs_box_overview_project_5 {
	position: relative;
	z-index: 99;
	height: 100%;
	width: 100%;
	background-size: auto 100%;
	background-position: center;
}
.bs_box_overview_project_6 {
	position: absolute;
	left: 100px; 
	top: 0px; 
	width: calc(100% - 100px); 
	height: 70px; 
	z-index: 90;
}
.bs_box_overview_project_9 {
	position: absolute;
	background-position: center;
	background-size: 80%;
	background-repeat: no-repeat;
	right: 0px;
	top: 0px;
	width: 80px;
	height: calc(100% - 10px);
	padding: 5px;
	z-index: 99;
}
.bs_box_overview_project_10 {
	position: relative; 
	z-index: 5; 
	width: 100%; 
	height: 100%;
}
.bs_box_overview_project_11 {
	position: relative; 
	left: 10px; 
	top:10px;
}
.bs_box_overview_project_12 {
	white-space: nowrap; 
	overflow: hidden; 
	text-overflow: ellipsis; 
	margin: 0px; 
	width: calc(100% - 65px);
}
.bs_box_overview_project_13 {
	position: absolute; 
	z-index: 99; 
	width: auto;
	max-width: calc(100% - 75px);
}
.bs_box_overview_project_14 {
	white-space: nowrap; 
	overflow: hidden; 
	text-overflow: ellipsis; 
	margin: 0px; 
	width: calc(100%);
}
.bs_box_overview_image_1 {
	width: 100%; 
	height: 100%;
	border-radius: 100%;
	border: 0px;
	}
.bs_box_overview_image_1:hover{
	-webkit-filter: sepia(.5);
    filter: sepia(.5);
	transition: all 0.3s ease-in-out;
	}	
.bs_box_overview_image_2 {
	width: auto; 
	height: 100%;
	border: 0px;
	max-height: 40px;
	
	}
.bs_label_overview_1 {
	text-align: center;
	font-family: abel, sans-serif;
	font-size: 12px;
	text-decoration: none;
	color: #C0C0C0;
    background:#393939;
	border-left:5px solid #393939;
	border-right: 5px solid #393939;
	border-bottom: 0px solid #393939;
	border-top: 0px solid #393939;
	border-radius: 1px;
	padding: 0px;
	white-space: nowrap;
	}
.bs_label_overview_1:hover{
    background:#FF931E;
	border-color:#FF931E; 
	color: #202020;
	}
.bs_switch_1 {
  position: relative;
  display: inline-block;
  width: 52px;
  height: 22px;
}

.bs_switch_1 input {
  opacity: 0;
  width: 0;
  height: 0;
}

.bs_switch_slider_1 {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #bc6561;
  -webkit-transition: .4s;
  transition: .4s;
  border: 1px solid #bc6561;
}

.bs_switch_slider_1:before {
  position: absolute;
  content: "";
  height: 18px;
  width: 18px;
  left: 1.25px;
  bottom: 1.25px;
  background-color: white;
  -webkit-transition: .4s;
  transition: .4s;
  box-shadow: 1px 1px 5px 0px #424242;
}
.bs_switch_slider_1:hover {
  border: 1px solid #FF931E;
}



.bs_switch_slider_input_1:checked + .bs_switch_slider_1 {
  background-color: #74af74;
  border: 1px solid #74af74;
}
.bs_switch_slider_input_1:checked:disabled + .bs_switch_slider_1 {
  background-color: #ADADAD;
  border: 1px solid #ADADAD;
}

.bs_switch_slider_input_1:checked:hover + .bs_switch_slider_1 {
  border: 1px solid #FF931E;
}

.bs_switch_slider_input_1:checked + .bs_switch_slider_1:before {
  -webkit-transform: translateX(29.75px);
  -ms-transform: translateX(29.75px);
  transform: translateX(29.75px);
}
	
.bs_switch_slider_1.bs_switch_round_1 {
  border-radius: 24px;
}

.bs_switch_slider_1.bs_switch_round_1:before {
  border-radius: 50%;
}	
.bs_switch_slider_2 {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #525252;
  -webkit-transition: .4s;
  transition: .4s;
  border: 1px solid #6D6D6D;
	/*background-image: url("../images/frame_background_1.png");	
	background-size:  auto;
	background-position: top right;
	background-repeat: no-repeat;*/
}

.bs_switch_slider_2:before {
  position: absolute;
  content: "";
  height: 18px;
  width: 18px;
  left: 1.25px;
  bottom: 1.25px;
  background-color: #B3B3B3;
  -webkit-transition: .4s;
  transition: .4s;
  box-shadow: 1px 1px 5px 0px #424242;
}
.bs_switch_slider_input_2:checked + .bs_switch_slider_2:before {
  background-color: #FFFFFF;
}
.bs_switch_slider_2:hover {
}
.bs_switch_slider_input_2:checked + .bs_switch_slider_2 {
  background-color: #525252;
  border: 1px solid #B1B1B1;
}

.bs_switch_slider_input_2:checked:hover + .bs_switch_slider_2 {
  border: 1px solid #FFFFFF;
}

.bs_switch_slider_input_2:checked + .bs_switch_slider_2:before {
  -webkit-transform: translateX(29.75px);
  -ms-transform: translateX(29.75px);
  transform: translateX(29.75px);
}
.bs_switch_slider_input_3:checked + .bs_switch_slider_2:before {
  background-color: #FFFFFF;
}
.bs_switch_slider_input_3:checked + .bs_switch_slider_2 {
  background-color: #72AE74;
  border: 1px solid #72AE74;
}

.bs_switch_slider_input_3:checked:hover + .bs_switch_slider_2 {
  border: 1px solid #72AE74;
}

.bs_switch_slider_input_3:checked + .bs_switch_slider_2:before {
  -webkit-transform: translateX(29.75px);
  -ms-transform: translateX(29.75px);
  transform: translateX(29.75px);
}	
.bs_switch_slider_2.bs_switch_round_2 {
  border-radius: 24px;
}

.bs_switch_slider_2.bs_switch_round_2:before {
  border-radius: 50%;
}	
.ui-dialog-buttonset button{
	font-size: 23px!important;
	border-style: solid!important;
	border-left-width: 10px!important;
	border-right-width: 10px!important;
	border-bottom-width: 3px!important;
	border-top-width: 3px!important;
	margin-bottom: 5px!important;
	margin-top: 5px!important;
	padding: 0px!important;
	border-radius: 3px!important;
	text-align: center!important;
	color: #FFFFFF!important;
    background:#393939!important;
	border-color:#393939!important;
	text-decoration: none!important;
}	
.ui-dialog-buttonset button:hover{
  	background-color: #FF931E!important; 
	border-color:#FF931E!important;
	color: #454545!important;
	}
.ui-dialog-buttonset {
  	background: none!important; 
	border: none!important;
	}
.ui-dialog-buttonset:hover {
  	background: none!important;
	border: none!important;
	}
.ui-dialog {
	border-radius: 10px !important;
	overflow: visible !important;
	}
.ui-dialog .ui-dialog-titlebar {
	overflow: visible !important;
	margin-bottom: 10px !important;
	}
.ui-dialog .ui-dialog-content {
	padding: 10px !important;
	overflow: visible !important;
	}
.lity-content {
  	overflow-x: hidden;
	overflow-y: auto;
	}
.lity { z-index: 99990 !important; }
.lity-wrap { z-index: 99990 !important; }
.lity-container { z-index: 99992 !important; }
.lity-close { z-index: 99994 !important; }
.polipop { z-index: 9980 !important; }

/* Select2-Dropdown ueber lity-Popup (lity ist 99990+). Voraussetzung: select2
   muss mit dropdownParent: $(document.body) initialisiert werden, sonst
   clippt overflow-y:auto von .bs23_popup_1 / .lity-content das Dropdown. */
.select2-container--open { z-index: 100000 !important; }
	
img {
  display: block;
  max-width: 100%;
}
.modal-lg{
  max-width: 1000px !important;
}
/* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgba(255,255,255,0.63); /* Fallback color */
}


/* The Close Button */
.close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}
/* Modal Header */
.modal-header {
  	padding: 2px 16px;
  	background-color: #FFFFFF!important;
  	color: white;
	border-top-right-radius: 5px;
	border-top-left-radius: 5px;
	min-height: 40px;
}

/* Modal Body */
.modal-body {
	padding: 2px 16px;
  	background-color: #FFFFFF!important;

}

/* Modal Footer */
.modal-footer {
  	padding: 2px 16px;
  	background-color: #FFFFFF!important;
  	color: white;	
	border-bottom-right-radius: 5px!important;
	border-bottom-left-radius: 5px!important;
	min-height: 50px;
}

/* Modal Content */
.modal-content {
  position: relative;
  margin: auto;
  border: 1px solid #888;
  width: 80%;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);
  animation-name: animatetop;
  animation-duration: 0.4s
}

/* Add Animation */
@keyframes animatetop {
  from {top: -300px; opacity: 0}
  to {top: 0; opacity: 1}
}
.slidecontainer {
  width: 100%; /* Width of the outside container */
}
.slider_base_2 {
  -webkit-appearance: none;  /* Override default CSS styles */
  appearance: none;
  width: 100%; /* Full-width */
  height: 15px; /* Specified height */
	background-color: white;
  outline: none; /* Remove outline */
transition: all 0.5s ease-in-out;
border-radius: 5px;
box-shadow: rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, rgba(0, 0, 0, 0.08) 0px 0px 0px 1px;
		margin-top: 7px;

}

/* Mouse-over effects */
.slider_base_2:hover {
  opacity: 1; /* Fully shown on mouse-over */

}

/* The slider handle (use -webkit- (Chrome, Opera, Safari, Edge) and -moz- (Firefox) to override default look) */
.slider_base_2::-webkit-slider-thumb {
  	-webkit-appearance: none; /* Override default look */
  	appearance: none;
  	width: 20px; /* Set a specific slider handle width */
  	height: 20px; /* Slider handle height */
  	background: #FFFFFF; /* Green background */
  	cursor: pointer; /* Cursor on hover */
	border-radius: 20px;
	box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
	transition: all 0.2s ease-in-out;
	border: none;
}

.slider_base_2::-moz-range-thumb {
 	width: 30px; /* Set a specific slider handle width */
 	height: 30px; /* Slider handle height */
 	background: #6a9961; /* Green background */
 	cursor: pointer; /* Cursor on hover */
 	border-radius: 15px;
	border: none;
}
.bs23_datatables_image_div_1{
	position: relative;
	height: 105px; 
	width: 150px; 
	border-radius: 8px 0px 0px 8px; 
	border-right: 0.5px solid #E7E7E7;
	background-size:100%;
	background-repeat: no-repeat;
	background-position: center;
}
@media screen and (max-width: 500px) {
    /* Bildspalte (Projekt-Vorschau) ausblenden -> Breite auf 0 */
    .mobile_hide tr td:first-child,
    .mobile_hide_2 tr td:first-child {
        display: none !important;
    }
    .mobile_hide colgroup col:first-child,
    .mobile_hide_2 colgroup col:first-child {
        display: none !important;
    }

    /* 3-Spalten-Karten (mobile_hide): Text nimmt die volle Breite, rechts 55px
       fuer den Pfeil-Button reserviert. Behebt den frueheren Leerraum: die alte
       Rechnung "calc(100% - 270px)" zog die bereits versteckte 150px-Bildspalte
       nochmals ab, und die 120px-Badge-Spalte blieb leer reserviert.
       table-layout:fixed bleibt (verhindert Aufblaehen durch nowrap-Text). */
    .mobile_hide colgroup col:nth-child(2) {
        width: calc(100% - 55px) !important;
    }
    .mobile_hide colgroup col:nth-child(3) {
        width: 55px !important;
    }

    /* 2-Spalten-Karten (mobile_hide_2, z.B. "Projekt hinzufuegen"): Text volle Breite */
    .mobile_hide_2 colgroup col:nth-child(2) {
        width: 100% !important;
    }

    /* Firmen-/Angebots-Badge (3. Spalte, .external_info) ist auf Mobile ausgeblendet */
    .external_info {
        display: none !important;
    }

}

/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* Mobile-Optimierung Tender-Forms (Phase 1)            */
/* Wirkung auf:                                          */
/*  - #createtender (create_tender.blade.php +           */
/*    edit_tender_before_publish.blade.php — beide       */
/*    nutzen denselben Form-ID)                          */
/*  - #edittender (edit_tender.blade.php)                */
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
@media (max-width: 1000px) {
    /* #1: Feste col-Breiten in Form-Tabellen aufheben — Tabellen reflowen */
    :is(#createtender, #edittender) table col {
        width: auto !important;
    }
    :is(#createtender, #edittender) table {
        table-layout: auto !important;
    }

    /* #2: Datetime-Picker und Dropdowns volle Breite (überschreibt inline width:150px) */
    :is(#createtender, #edittender) .datetimepicker {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box;
    }
    :is(#createtender, #edittender) select.bs_dropdown_1 {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box;
    }

    /* Inline width: calc(100% - 25px) auf bs23_input_1.datetimepicker neutralisieren */
    :is(#createtender, #edittender) input.bs23_input_1[style*="calc"] {
        width: 100% !important;
    }

    /* #5: Touch-Targets — Checkbox-Wrapper-Labels bekommen mehr Klickfläche */
    :is(#createtender, #edittender) label.bs23_button_checkbox_3,
    :is(#createtender, #edittender) label.bs23_button_checkbox_1,
    :is(#createtender, #edittender) label.bs23_button_checkbox_2 {
        min-height: 44px;
        display: inline-flex;
        align-items: center;
    }

    /* Form-Inputs mit min-height für bessere Tap-Größe */
    :is(#createtender, #edittender) input[type="text"],
    :is(#createtender, #edittender) input[type="email"],
    :is(#createtender, #edittender) input[type="tel"],
    :is(#createtender, #edittender) input[type="number"],
    :is(#createtender, #edittender) textarea,
    :is(#createtender, #edittender) select {
        min-height: 40px;
        box-sizing: border-box;
    }

    /* Form-Container Innenabstand reduzieren auf Mobile (mehr Platz fürs Formular) */
    :is(#createtender, #edittender) .bs23_frame_2 {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
}

/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* Mobile-Optimierung Tender-Forms (Phase 2)            */
/* Form-Tabellen via Flexbox: Label oben, Inputs flexibel darunter */
/* Sektionen: Titel, Vorgaben, Publikation, Anforderungen, Info, Kontakt */
/* Wirkung auf #createtender + #edittender (s. Phase 1) */
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
@media (max-width: 1000px) {
    /* Form-Tabellen werden zu Block-Layout */
    :is(#createtender, #edittender) table.bs23_box_1,
    :is(#createtender, #edittender) table.bs23_box_1d {
        display: block;
        width: 100% !important;
    }

    /* colgroup ausblenden — Spaltenbreiten irrelevant im Flex-Layout */
    :is(#createtender, #edittender) table.bs23_box_1 > colgroup,
    :is(#createtender, #edittender) table.bs23_box_1d > colgroup {
        display: none;
    }

    :is(#createtender, #edittender) table.bs23_box_1 > tbody,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody {
        display: block;
        width: 100%;
    }

    /* Row als Flex-Container — Label bricht via flex-basis 100% um, Rest fliesst inline */
    :is(#createtender, #edittender) table.bs23_box_1 > tr,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr,
    :is(#createtender, #edittender) table.bs23_box_1d > tr,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        column-gap: 8px;
        row-gap: 4px;
        width: 100%;
        margin-bottom: 6px;
        padding: 4px 0;
    }

    /* Default: Cell als Inline-Flex-Item, Auto-Breite */
    :is(#createtender, #edittender) table.bs23_box_1 > tr > td,
    :is(#createtender, #edittender) table.bs23_box_1 > tr > th,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr > td,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr > th,
    :is(#createtender, #edittender) table.bs23_box_1d > tr > td,
    :is(#createtender, #edittender) table.bs23_box_1d > tr > th,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr > td,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr > th {
        flex: 0 1 auto;
        width: auto !important;
        max-width: 100%;
        padding: 0 !important;
        text-align: left !important;
        box-sizing: border-box;
        min-width: 0;
    }

    /* Erste Cell = Label → eigene Zeile (volle Breite) */
    :is(#createtender, #edittender) table.bs23_box_1 > tr > td:first-child,
    :is(#createtender, #edittender) table.bs23_box_1 > tr > th:first-child,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr > td:first-child,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr > th:first-child,
    :is(#createtender, #edittender) table.bs23_box_1d > tr > td:first-child,
    :is(#createtender, #edittender) table.bs23_box_1d > tr > th:first-child,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr > td:first-child,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr > th:first-child {
        flex: 1 1 100%;
    }

    /* Wenn nur 2 Cells (Label + Input) — Input-Cell auch volle Breite */
    :is(#createtender, #edittender) table.bs23_box_1 > tr > td:nth-child(2):last-child,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr > td:nth-child(2):last-child,
    :is(#createtender, #edittender) table.bs23_box_1d > tr > td:nth-child(2):last-child,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr > td:nth-child(2):last-child {
        flex: 1 1 100%;
    }

    /* Bei Multi-Cell-Rows: letzte Cell darf wachsen, damit Inputs Platz haben */
    :is(#createtender, #edittender) table.bs23_box_1 > tr > td:nth-child(n+3):last-child,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr > td:nth-child(n+3):last-child,
    :is(#createtender, #edittender) table.bs23_box_1d > tr > td:nth-child(n+3):last-child,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr > td:nth-child(n+3):last-child {
        flex: 1 1 auto;
        min-width: 100px;
    }

    /* Section-Header (th mit colspan) volle Breite, hervorgehoben */
    :is(#createtender, #edittender) table.bs23_box_1 > tr > th[colspan],
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr > th[colspan],
    :is(#createtender, #edittender) table.bs23_box_1d > tr > th[colspan],
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr > th[colspan] {
        flex: 1 1 100%;
        padding: 4px 0 !important;
    }

    /* Leere th/td-Cells mit text-align: right verstecken (typische Action-Button-Slots
       mit auskommentierten Info-Buttons). :has() matcht nur Cells mit Funktion */
    :is(#createtender, #edittender) table.bs23_box_1 > tr > th[colspan]:not(:has(label, a, input, button, span, img)),
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr > th[colspan]:not(:has(label, a, input, button, span, img)),
    :is(#createtender, #edittender) table.bs23_box_1d > tr > th[colspan]:not(:has(label, a, input, button, span, img)),
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr > th[colspan]:not(:has(label, a, input, button, span, img)),
    :is(#createtender, #edittender) table.bs23_box_1 > tr > td[style*="text-align: right"]:not(:has(label, a, input, button, span, img, textarea, select)),
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr > td[style*="text-align: right"]:not(:has(label, a, input, button, span, img, textarea, select)),
    :is(#createtender, #edittender) table.bs23_box_1d > tr > td[style*="text-align: right"]:not(:has(label, a, input, button, span, img, textarea, select)),
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr > td[style*="text-align: right"]:not(:has(label, a, input, button, span, img, textarea, select)) {
        display: none !important;
    }

    /* Single-Input Cell (zweite und letzte Cell): Input füllt 100% */
    :is(#createtender, #edittender) table.bs23_box_1 > tr > td:nth-child(2):last-child input.bs23_input_1,
    :is(#createtender, #edittender) table.bs23_box_1 > tr > td:nth-child(2):last-child select.bs_dropdown_1,
    :is(#createtender, #edittender) table.bs23_box_1 > tr > td:nth-child(2):last-child textarea,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr > td:nth-child(2):last-child input.bs23_input_1,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr > td:nth-child(2):last-child select.bs_dropdown_1,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr > td:nth-child(2):last-child textarea,
    :is(#createtender, #edittender) table.bs23_box_1d > tr > td:nth-child(2):last-child input.bs23_input_1,
    :is(#createtender, #edittender) table.bs23_box_1d > tr > td:nth-child(2):last-child select.bs_dropdown_1,
    :is(#createtender, #edittender) table.bs23_box_1d > tr > td:nth-child(2):last-child textarea,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr > td:nth-child(2):last-child input.bs23_input_1,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr > td:nth-child(2):last-child select.bs_dropdown_1,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr > td:nth-child(2):last-child textarea {
        width: 100% !important;
        box-sizing: border-box;
    }

    /* Letzte Cell in Multi-Input-Zeilen (n+3): Input füllt 100% des verfügbaren Platzes */
    :is(#createtender, #edittender) table.bs23_box_1 > tr > td:nth-child(n+3):last-child input.bs23_input_1,
    :is(#createtender, #edittender) table.bs23_box_1 > tr > td:nth-child(n+3):last-child select.bs_dropdown_1,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr > td:nth-child(n+3):last-child input.bs23_input_1,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr > td:nth-child(n+3):last-child select.bs_dropdown_1,
    :is(#createtender, #edittender) table.bs23_box_1d > tr > td:nth-child(n+3):last-child input.bs23_input_1,
    :is(#createtender, #edittender) table.bs23_box_1d > tr > td:nth-child(n+3):last-child select.bs_dropdown_1,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr > td:nth-child(n+3):last-child input.bs23_input_1,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr > td:nth-child(n+3):last-child select.bs_dropdown_1 {
        width: 100% !important;
        box-sizing: border-box;
    }

    /* Mittlere Inputs in Multi-Cell-Rows (z.B. "112" in Titel, "exfrom" in Ausführung)
       — schmale, feste Breite, damit "112 - Altlasten" auf einer Zeile bleibt */
    :is(#createtender, #edittender) table.bs23_box_1 > tr > td:not(:first-child):not(:last-child) input.bs23_input_1,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr > td:not(:first-child):not(:last-child) input.bs23_input_1,
    :is(#createtender, #edittender) table.bs23_box_1d > tr > td:not(:first-child):not(:last-child) input.bs23_input_1,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr > td:not(:first-child):not(:last-child) input.bs23_input_1 {
        width: 100px !important;
        max-width: 100%;
        box-sizing: border-box;
    }

    /* Textareas füllen IMMER 100% (sind sowieso einzige in ihrer Cell) */
    :is(#createtender, #edittender) table.bs23_box_1 textarea,
    :is(#createtender, #edittender) table.bs23_box_1d textarea {
        width: 100% !important;
        box-sizing: border-box;
    }

    /* Versteckte Rows (display:none beibehalten — z.B. simap-Feld in Info) */
    :is(#createtender, #edittender) table.bs23_box_1 > tr[style*="display:none"],
    :is(#createtender, #edittender) table.bs23_box_1 > tr[style*="display: none"],
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr[style*="display:none"],
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr[style*="display: none"],
    :is(#createtender, #edittender) table.bs23_box_1d > tr[style*="display:none"],
    :is(#createtender, #edittender) table.bs23_box_1d > tr[style*="display: none"],
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr[style*="display:none"],
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr[style*="display: none"] {
        display: none !important;
    }

    /* Lock-Indikatoren bleiben inline */
    :is(#createtender, #edittender) .bs23_cond_lock_0 {
        display: inline-block;
        vertical-align: middle;
        margin-right: 6px;
    }

    /* offer_form-Row: spezielle 3-Cell-Struktur — Label | offer_form_focus Liste | Lock-Toggle (is_offer_form).
       Standard Phase-2-Layout: Label auf eigene Zeile, Liste+Lock daneben — Lock landet "schwebend" rechts.
       Fix: Label + Lock in oberster Zeile (wie Desktop), Liste in eigener Zeile DARUNTER via flex order. */
    :is(#createtender, #edittender) table.bs23_box_1 > tr:has(#offer_form_focus) > td:first-child,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr:has(#offer_form_focus) > td:first-child {
        flex: 1 1 0 !important;
        min-width: 0;
    }
    :is(#createtender, #edittender) table.bs23_box_1 > tr:has(#offer_form_focus) > td:has(#offer_form_focus),
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr:has(#offer_form_focus) > td:has(#offer_form_focus) {
        flex: 1 1 100% !important;
        order: 2;
    }
    :is(#createtender, #edittender) table.bs23_box_1 > tr:has(#offer_form_focus) > td:has(label.bs_button_checkbox_2),
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr:has(#offer_form_focus) > td:has(label.bs_button_checkbox_2) {
        flex: 0 0 auto !important;
        order: 1;
        text-align: right !important;
    }
    /* Inline `margin-top: 15px` aus dem Wrapper-Div neutralisieren */
    :is(#createtender, #edittender) table.bs23_box_1 > tr:has(#offer_form_focus) > td > div[style*="margin-top:15px"],
    :is(#createtender, #edittender) table.bs23_box_1 > tr:has(#offer_form_focus) > td > div[style*="margin-top: 15px"] {
        margin-top: 0 !important;
    }

    /* Erlaubte Angebotsarten — Checkbox-Liste (#offer_form_focus)
       Phase 1 hat auch hier col-Breiten resettet → Checkbox klebte am Label.
       Wiederherstellung der 35px-Checkbox-Spalte + Padding + Zeilen-Abstand */
    :is(#createtender, #edittender) #offer_form_focus {
        table-layout: fixed !important;
    }
    :is(#createtender, #edittender) #offer_form_focus col:first-child {
        width: 35px !important;
    }
    :is(#createtender, #edittender) #offer_form_focus td:first-child {
        width: 35px !important;
        padding-right: 8px !important;
        vertical-align: middle !important;
    }
    :is(#createtender, #edittender) #offer_form_focus td:nth-child(2) {
        padding-left: 4px !important;
        vertical-align: middle !important;
    }
    :is(#createtender, #edittender) #offer_form_focus tr {
        border-bottom: none;
    }
    :is(#createtender, #edittender) #offer_form_focus tr > td {
        padding-top: 6px !important;
        padding-bottom: 6px !important;
    }

    /* Toggle-Rows in Erweiterte Einstellungen: Label + Checkbox auf EINER Zeile.
       Override für Rows die einen `label.bs23_button_checkbox_3` (Toggle-Checkbox) enthalten.
       Ohne diesen Override würde das Label durch flex 1 1 100% auf eigene Zeile gehen. */
    :is(#createtender, #edittender) table.bs23_box_1 > tr:has(label.bs23_button_checkbox_3) > td:first-child,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr:has(label.bs23_button_checkbox_3) > td:first-child,
    :is(#createtender, #edittender) table.bs23_box_1d > tr:has(label.bs23_button_checkbox_3) > td:first-child,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr:has(label.bs23_button_checkbox_3) > td:first-child {
        flex: 1 1 0 !important;
        min-width: 0;
    }

    /* Checkbox-Cell (zweite Cell mit Toggle): rechts, content-sized.
       Als Flex-Container damit der innere 30x30 Toggle-Label vertikal mittig in der Cell sitzt. */
    :is(#createtender, #edittender) table.bs23_box_1 > tr:has(label.bs23_button_checkbox_3) > td:nth-child(2),
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr:has(label.bs23_button_checkbox_3) > td:nth-child(2),
    :is(#createtender, #edittender) table.bs23_box_1d > tr:has(label.bs23_button_checkbox_3) > td:nth-child(2),
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr:has(label.bs23_button_checkbox_3) > td:nth-child(2) {
        flex: 0 0 auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
    }

    /* Cell 3 (falls vorhanden, z.B. Datum-Input bei publish) → eigene Zeile darunter */
    :is(#createtender, #edittender) table.bs23_box_1 > tr:has(label.bs23_button_checkbox_3) > td:nth-child(3),
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr:has(label.bs23_button_checkbox_3) > td:nth-child(3),
    :is(#createtender, #edittender) table.bs23_box_1d > tr:has(label.bs23_button_checkbox_3) > td:nth-child(3),
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr:has(label.bs23_button_checkbox_3) > td:nth-child(3) {
        flex: 1 1 100% !important;
        min-width: 0;
    }

    /* Spezialfall managetemplate / edit_template: Cell 3 ist ein Lock-Toggle (bs_button_checkbox_2 — Schloss-Symbol).
       Soll INLINE rechts neben Cell 2 stehen (NICHT eigene Zeile wie das publish_option Datum-Input).
       Override des vorigen flex:1 1 100%. Flex-Container für vertikale Zentrierung des inneren Labels. */
    :is(#createtender, #edittender) table.bs23_box_1 > tr:has(label.bs23_button_checkbox_3) > td:nth-child(3):has(label.bs_button_checkbox_2),
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr:has(label.bs23_button_checkbox_3) > td:nth-child(3):has(label.bs_button_checkbox_2),
    :is(#createtender, #edittender) table.bs23_box_1d > tr:has(label.bs23_button_checkbox_3) > td:nth-child(3):has(label.bs_button_checkbox_2),
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr:has(label.bs23_button_checkbox_3) > td:nth-child(3):has(label.bs_button_checkbox_2) {
        flex: 0 0 auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
    }

    /* Mobile-only: ALLE Lock-Toggles (bs_button_checkbox_2) im Form normalisieren.
       Original-CSS positioniert das _check-Span mit `position: absolute; top: -12px` 12px ÜBER dem Label-Top —
       für Desktop-Tabellen-Cells designed (ragt in die Cell darüber).
       Im Mobile-Flex-Layout führt das zu schwebenden Schloss-Symbolen oberhalb von Sektionen
       (z.B. einsames Schloss vor "Erweiterte Einstellungen"-Header).
       Fix: Label bekommt explizite Größe (30x30 = touch-friendly), Span vertikal+horizontal zentriert. */
    :is(#createtender, #edittender) label.bs_button_checkbox_2 {
        display: inline-block !important;
        width: 30px;
        height: 30px;
        padding-left: 0 !important;
        vertical-align: middle;
        position: relative;
    }

    /* Identisch positioniert wie .bs23_button_checkbox_3_check (Wert-Toggle, top:0/left:0)
       — damit Schloss + Häkchen vertikal exakt auf gleicher Höhe sitzen.
       Border entfernen (Original hat `border: 2px solid transparent` für Hover) — der Border
       würde mit `background-size: 120%` die Image-Skalierung relativ zur padding-box
       verschieben (=26x26 statt 30x30 → SVG kleiner und an anderer Y-Position als Häkchen). */
    :is(#createtender, #edittender) label.bs_button_checkbox_2 > .bs_button_checkbox_2_check {
        top: 0 !important;
        left: 0 !important;
        transform: none !important;
        width: 30px !important;
        height: 30px !important;
        border: none !important;
        background-size: 120% !important;
        background-repeat: no-repeat;
        background-position: center;
    }

    /* Optische Korrektur: Schloss-SVG (checkbox_1*.svg, viewBox 300x200) hat anderes Aspect-Ratio
       als Häkchen-SVG (checkbox_3*.svg, viewBox 480x480) → optisch 5px tiefer.
       Override NUR für Erweiterte-Einstellungen-Toggles (Cell 3 in bs23_button_checkbox_3-Rows). */
    :is(#createtender, #edittender) table.bs23_box_1 > tr:has(label.bs23_button_checkbox_3) > td:nth-child(3) > label.bs_button_checkbox_2 > .bs_button_checkbox_2_check,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr:has(label.bs23_button_checkbox_3) > td:nth-child(3) > label.bs_button_checkbox_2 > .bs_button_checkbox_2_check,
    :is(#createtender, #edittender) table.bs23_box_1d > tr:has(label.bs23_button_checkbox_3) > td:nth-child(3) > label.bs_button_checkbox_2 > .bs_button_checkbox_2_check,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr:has(label.bs23_button_checkbox_3) > td:nth-child(3) > label.bs_button_checkbox_2 > .bs_button_checkbox_2_check {
        top: -5px !important;
    }

    /* Toggle-Rows kompakter (weniger vertikales Padding) */
    :is(#createtender, #edittender) table.bs23_box_1 > tr:has(label.bs23_button_checkbox_3),
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr:has(label.bs23_button_checkbox_3),
    :is(#createtender, #edittender) table.bs23_box_1d > tr:has(label.bs23_button_checkbox_3),
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr:has(label.bs23_button_checkbox_3) {
        padding: 6px 0;
        margin-bottom: 0;
        column-gap: 12px;
        min-height: 36px;
    }

    /* Toggle-Checkbox: Label braucht explizite 30x30 Größe für saubere Flex-Zentrierung,
       sonst kollabiert sie auf 0px (weil .bs23_button_checkbox_3_check position:absolute ist) */
    :is(#createtender, #edittender) table.bs23_box_1 > tr:has(label.bs23_button_checkbox_3) > td > label.bs23_button_checkbox_3,
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr:has(label.bs23_button_checkbox_3) > td > label.bs23_button_checkbox_3,
    :is(#createtender, #edittender) table.bs23_box_1d > tr:has(label.bs23_button_checkbox_3) > td > label.bs23_button_checkbox_3,
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr:has(label.bs23_button_checkbox_3) > td > label.bs23_button_checkbox_3 {
        display: inline-block !important;
        width: 30px;
        height: 30px;
        padding-left: 0 !important;
        margin: 0;
        vertical-align: middle;
    }

    /* Visual-Span (das X/✓-Icon) korrekt positionieren — top:-15px ist für klassisches
       table-cell-Layout, im Flex-Layout muss sie auf 0 (passt zur 30px Label-Höhe) */
    :is(#createtender, #edittender) table.bs23_box_1 .bs23_button_checkbox_3_check,
    :is(#createtender, #edittender) table.bs23_box_1d .bs23_button_checkbox_3_check {
        top: 0 !important;
    }

    /* publish_option Toggle-Row: Cell 3 (Datum-Input) nur sichtbar wenn Checkbox checked.
       Reaktiv via :checked-State — vermeidet Leerraum bei unchecked.
       AUSNAHME: in managetemplate/edit_template ist Cell 3 ein Lock-Toggle (bs_button_checkbox_2),
       NICHT der Datum-Input — dort soll das Schloss auch bei unchecked sichtbar bleiben.
       Daher `:not(:has(label.bs_button_checkbox_2))` ausschließen. */
    :is(#createtender, #edittender) table.bs23_box_1 > tr:has(input.is_publish_option:not(:checked)) > td:nth-child(3):not(:has(label.bs_button_checkbox_2)),
    :is(#createtender, #edittender) table.bs23_box_1 > tbody > tr:has(input.is_publish_option:not(:checked)) > td:nth-child(3):not(:has(label.bs_button_checkbox_2)),
    :is(#createtender, #edittender) table.bs23_box_1d > tr:has(input.is_publish_option:not(:checked)) > td:nth-child(3):not(:has(label.bs_button_checkbox_2)),
    :is(#createtender, #edittender) table.bs23_box_1d > tbody > tr:has(input.is_publish_option:not(:checked)) > td:nth-child(3):not(:has(label.bs_button_checkbox_2)) {
        display: none !important;
    }

    /* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
    /* Ausschreibungsunterlagen — Dokument-Tiles            */
    /* (statisch + dynamisch via JS appended in #showdocuments) */
    /* Strategie: Tabelle zu Flex umbauen via display:contents */
    /* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */

    /* Tile als Flex-Container mit Wrap — Icons oben, Content darunter */
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1,
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1d,
    :is(#createtender, #edittender) table.bs23_box_tender_documents_2 {
        display: flex !important;
        flex-wrap: wrap;
        align-items: center;
        column-gap: 8px;
        row-gap: 0;
        padding: 14px !important;
        margin-top: 24px !important; /* mehr Platz oben für absolute Badge */
        margin-bottom: 8px !important;
        border-radius: 8px;
        position: relative;
        box-sizing: border-box;
    }

    /* colgroup ausblenden */
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1 > colgroup,
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1d > colgroup,
    :is(#createtender, #edittender) table.bs23_box_tender_documents_2 > colgroup {
        display: none !important;
    }

    /* tbody und tr durchlässig — Cells werden direkt zu Flex-Items */
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1 > tbody,
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1d > tbody,
    :is(#createtender, #edittender) table.bs23_box_tender_documents_2 > tbody,
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1 tr,
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1d tr,
    :is(#createtender, #edittender) table.bs23_box_tender_documents_2 tr {
        display: contents;
    }

    /* TD 1: Delete (X) — Cell nimmt keinen Platz, X wird absolut an der Tile-Ecke positioniert */
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1 td:nth-child(1),
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1d td:nth-child(1),
    :is(#createtender, #edittender) table.bs23_box_tender_documents_2 td:nth-child(1) {
        flex: 0 0 0 !important;
        width: 0 !important;
        min-width: 0;
        background: transparent !important;
        padding: 0 !important;
    }

    /* Inner Wrapper-Div mit inline `position: relative` neutralisieren —
       sonst hängt sich der absolute X-Button an diesen Wrapper statt an die Tile */
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1 td:nth-child(1) > div,
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1d td:nth-child(1) > div,
    :is(#createtender, #edittender) table.bs23_box_tender_documents_2 td:nth-child(1) > div {
        position: static !important;
    }

    /* TD 2 — orange Tile (Pflichtdokument): Download-Button direkt unter Datei, links ausgerichtet */
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1 td:nth-child(2),
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1d td:nth-child(2) {
        order: 99;
        flex: 0 0 100% !important;
        background: transparent !important;
        padding: 0 !important;
        margin-top: 0;
        margin-bottom: 0;
        text-align: left !important;
    }

    /* TD 2 — blaue Tile (Einzureichende Dokumente): icon hat keine Funktion → komplett ausblenden */
    :is(#createtender, #edittender) table.bs23_box_tender_documents_2 td:nth-child(2) {
        display: none !important;
    }

    /* TD 3: Hauptinhalt — VOLLE BREITE auf eigener Zeile (wraps via flex-basis 100%) */
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1 td:nth-child(3),
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1d td:nth-child(3),
    :is(#createtender, #edittender) table.bs23_box_tender_documents_2 td:nth-child(3) {
        flex: 1 1 100%;
        min-width: 0;
        max-width: none !important;
        background: transparent !important;
        padding: 0 !important;
        text-align: left !important;
        margin-top: 0;
    }

    /* Cloud-Icon ausblenden (Mobile) — bleibt als Anchor erhalten, aber visuell nur Button */
    /* Orange Tile (_1) UND graue Tile (_4) — Anchor wird zu kleinem Download-Button */
    :is(#createtender, #edittender) .bs23_box_tender_uploaded_1,
    :is(#createtender, #edittender) .bs23_box_tender_uploaded_4 {
        display: inline-block !important;
        width: auto !important;
        height: auto !important;
        padding: 3px 12px !important;
        margin: 0 !important;
        background-image: none !important;
        background-color: white !important;
        border-radius: 4px;
        text-decoration: none !important;
        font-weight: bold;
        font-size: 12px;
        line-height: 1.4;
        min-height: 0;
        min-width: 0;
        box-sizing: border-box;
    }
    /* Orange Tile: Button-Text orange */
    :is(#createtender, #edittender) .bs23_box_tender_uploaded_1 {
        color: #FF931E !important;
    }
    /* Graue Tile: Button-Text dunkelgrau (passt zu grauem Tile-Theme) */
    :is(#createtender, #edittender) .bs23_box_tender_uploaded_4 {
        color: #424141 !important;
    }
    :is(#createtender, #edittender) .bs23_box_tender_uploaded_1::before,
    :is(#createtender, #edittender) .bs23_box_tender_uploaded_4::before {
        content: "Download";
    }
    :is(#createtender, #edittender) .bs23_box_tender_uploaded_1:hover {
        background-color: #FFE9D2 !important;
        background-image: none !important;
    }
    :is(#createtender, #edittender) .bs23_box_tender_uploaded_4:hover {
        background-color: #E8E8E8 !important;
        background-image: none !important;
    }

    /* Blaue Tile-Icon (bs23_box_tender_uploaded_2) — wird mit Cell 2 versteckt, hier nochmal explizit */
    :is(#createtender, #edittender) .bs23_box_tender_uploaded_2 {
        display: none !important;
    }

    /* Cell 3 Wrapper-Div (orange Tile): column-reverse → Titel+Dropdown OBEN, Datei DARUNTER */
    :is(#createtender, #edittender) .bs23_box_tender_uploaded_3 {
        width: 100% !important;
        display: flex !important;
        flex-direction: column-reverse;
    }

    /* Blaue Tile (bs23_box_tender_documents_2): kein .bs23_box_tender_uploaded_3 Wrapper —
       Floats liegen direkt in TD3. column-reverse auf TD3 → Titel+Dropdown oben, Label darunter */
    :is(#createtender, #edittender) table.bs23_box_tender_documents_2 td:nth-child(3) {
        display: flex !important;
        flex-direction: column-reverse;
    }

    /* Float-Layout auflösen — alle direkten Float-Divs als Block (orange + blau) */
    :is(#createtender, #edittender) .bs23_box_tender_uploaded_3 > div,
    :is(#createtender, #edittender) .bs23_box_tender_uploaded_3 > p,
    :is(#createtender, #edittender) table.bs23_box_tender_documents_2 td:nth-child(3) > div {
        float: none !important;
        width: 100% !important;
        margin-bottom: 0 !important;
    }

    /* Datei-Label (visuell unten in column-reverse) — kein margin-bottom mehr.
       Auch direkt in TD3 der blauen Tile (edit_tender) für "Zwingend..."-Label */
    :is(#createtender, #edittender) .bs23_box_tender_uploaded_3 .bs23_label_size_1,
    :is(#createtender, #edittender) table.bs23_box_tender_documents_2 td:nth-child(3) > label.bs23_label_size_1 {
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Filename darf wrappen */
    :is(#createtender, #edittender) .bs23_box_tender_uploaded_3 .bs23_label_size_1 {
        word-break: break-word;
        white-space: normal;
    }

    /* Editable-Select Wrapper + Plugin-Input volle Breite (verhindert Truncation) */
    :is(#createtender, #edittender) .select-editable {
        position: relative;
        width: 100% !important;
        display: block;
    }
    :is(#createtender, #edittender) .select-editable input.es-input {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 32px;
        box-sizing: border-box !important;
        padding: 6px 24px 6px 8px !important;
        background-color: rgba(255,255,255,0.15);
        border: 1px solid rgba(255,255,255,0.3);
        border-radius: 4px;
        color: white;
    }

    /* Native Input/Select (in edit_tender) und native Select (allgemein) als Input-Look stylen.
       In create_tender ersetzt editableSelect → .es-input. In edit_tender bleibt nativer
       <input>/<select> sichtbar, daher hier zusätzliche Styling-Pass für Konsistenz.
       bs23_dropdown_upload_1 = orange Tile (Pflichtdokument)
       bs_dropdown_obligation_2 = blaue Tile (Einzureichende Dokumente) */
    :is(#createtender, #edittender) input.bs23_dropdown_upload_1,
    :is(#createtender, #edittender) select.bs23_dropdown_upload_1,
    :is(#createtender, #edittender) select.bs_dropdown_obligation_2 {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 32px;
        box-sizing: border-box !important;
        padding: 6px 8px !important;
        background-color: rgba(255, 255, 255, 0.15) !important;
        border: 1px solid rgba(255, 255, 255, 0.3) !important;
        border-radius: 4px;
        color: white !important;
        appearance: none;
        -webkit-appearance: none;
    }

    /* In edit_tender / edit_tender_before_publish ist der Titel im blauen Tile ein
       <label class="bs_dropdown_obligation_2"> (kein <select>) — als Input-Look stylen,
       damit es konsistent mit dem editierbaren .es-input aussieht.
       display:flex + align-items:center → Text vertikal zentriert */
    :is(#createtender, #edittender) label.bs_dropdown_obligation_2 {
        display: flex !important;
        align-items: center;
        width: 100% !important;
        min-height: 32px;
        box-sizing: border-box !important;
        padding: 6px 8px !important;
        margin: 4px 0 0 0 !important;
        background-color: rgba(255, 255, 255, 0.15);
        border: 1px solid rgba(255, 255, 255, 0.3);
        border-radius: 4px;
        color: white !important;
        font-weight: normal !important;
        line-height: 1.3;
    }
    /* Leere Labels ausblenden — Blade rendert für jeden $downloadlist-Eintrag ein <label>,
       aber nur das mit Category-Match hat Text. Alle anderen sind leer. */
    :is(#createtender, #edittender) label.bs_dropdown_obligation_2:empty {
        display: none !important;
    }

    /* In blauer Tile (edit_tender): <br> und leeres <p class="bs23_label_p"> entfernen,
       damit der Abstand zwischen Box und "Zwingend..."-Text gleich wie in create_tender ist */
    :is(#createtender, #edittender) table.bs23_box_tender_documents_2 td:nth-child(3) > br {
        display: none !important;
    }
    :is(#createtender, #edittender) table.bs23_box_tender_documents_2 td:nth-child(3) > p.bs23_label_p:empty,
    :is(#createtender, #edittender) table.bs23_box_tender_documents_2 td:nth-child(3) > p:empty {
        display: none !important;
    }
    :is(#createtender, #edittender) table.bs23_box_tender_documents_2 td:nth-child(3) > p {
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Pflichtdokument-Badge: absolute position relativ zum TILE (Tabelle), oben mittig/rechts —
       wie in der PC-Version. Dazu copy_1 auf static damit copy_2 sich an die Tabelle hängt. */
    :is(#createtender, #edittender) .bs_box_tender_copy_1 {
        position: static !important;
        margin: 0;
    }
    :is(#createtender, #edittender) .bs_box_tender_copy_2 {
        position: absolute !important;
        top: -14px !important;
        left: 0 !important;
        right: auto !important;
        padding: 3px 12px !important;
        font-size: 11px;
        z-index: 2;
    }

    /* Delete-X-Button: absolute relativ zum TILE (Tabelle), oben rechts in der Ecke (5px) */
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1 .bs23_box_tender_add_delete_2,
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1d .bs23_box_tender_add_delete_2,
    :is(#createtender, #edittender) table.bs23_box_tender_documents_2 .bs23_box_tender_add_delete_2 {
        position: absolute !important;
        top: 5px !important;
        right: 5px !important;
        left: auto !important;
        z-index: 3;
    }

    /* "Ungültig"-Badge auf grauer Tile (status=1) — visuell wie Pflichtdokument auf orange,
       oben links aus dem Tile rausragend. Reines CSS-Pseudo, ohne Funktion.
       Gleiches Grau wie die Tile (#CFCFCF), Schrift dunkel wie der Titel-Text */
    :is(#createtender, #edittender) table.bs23_box_tender_documents_1d::before {
        content: "Ungültig";
        position: absolute;
        top: -14px;
        left: 0;
        padding: 4px 12px;
        font-size: 11px;
        font-weight: normal;
        color: #323232;
        background-color: #CFCFCF;
        border: 2px solid #CFCFCF;
        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
        z-index: 2;
        font-family: abel, sans-serif;
        line-height: 1.2;
    }
}

/* =========================================================
   Section-Kopfzeile — die weisse Titelzeile ueber einem Inhaltsblock
   Verwendet in: resources/views/lv/editor.blade.php (Leistungsverzeichnis),
                 resources/views/lv/measurement.blade.php (Ausmass)
   Beispiel-Markup:
     <div class="cg-section">
       <div class="cg-section-header cg-section-header-static open">
         <label>Ausmass</label>
         <div class="cg-section-header-actions"> … Icon-Knoepfe … </div>
       </div>
       <div class="cg-section-body"> … Inhalt … </div>
     </div>

   ⚠⚠ STAND BIS 18.09.2026 NUR IM <style>-BLOCK DES LV-EDITORS. Als das
   Ausmass dieselbe Zeile bekam, waere daraus eine zweite Kopie geworden —
   und zwei Kopien laufen auseinander. Darum hier, einmal, fuer beide.
   ⚠ `.cg-section` selbst ist NICHT hier: der Editor braucht darunter
   700px Luft fuer seine Dropdowns, das Ausmass nicht. Ein Abstand ist
   Sache der Seite, die Kopfzeile nicht.
   ========================================================= */
.cg-section-header {
    padding: 10px 15px;
    background: #fff;
    border-radius: 10px;
    box-shadow: rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, rgba(0, 0, 0, 0.08) 0px 0px 0px 1px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    user-select: none;
    transition: all 0.3s ease-in-out;
}
.cg-section-header:hover { background: #FEFFFE; }
.cg-section-header.open {
    border-radius: 10px 10px 0 0;
    background: #FEFFFE;
}
.cg-section-header label {
    font-family: abel, sans-serif;
    font-size: 20px;
    color: #323232;
    cursor: pointer;
    /* ⚠ Der Klick gehoert der ZEILE (sie klappt auf), nicht der Beschriftung —
       sonst faengt ein Doppelklick auf den Titel an, Text zu markieren. */
    pointer-events: none;
}
.cg-section-body {
    display: none;
    padding: 15px;
    background: #fff;
    border-radius: 0 0 10px 10px;
    box-shadow: rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, rgba(0, 0, 0, 0.08) 0px 0px 0px 1px;
}
/* Statischer Header (z.B. «Leistungsverzeichnis», «Ausmass») — kein Cursor,
   kein Hover, immer offen. */
.cg-section-header-static { cursor: default; }
.cg-section-header-static:hover { background: #fff; }
/* ⚠ Ohne diese Regel bliebe der Body auf `display:none` stehen, bis ein
   JS-Aufruf den Zustand aus dem localStorage liest — auf einer Seite ohne
   dieses JS (Ausmass) also fuer immer. */
.cg-section-header-static.open + .cg-section-body { display: block; }
/* Die Knoepfe rechts in der Kopfzeile, vertikal mittig. */
.cg-section-header-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: auto;
}
.cg-section-header-actions .lv-title-version-wrap { margin-left: 0; }

/* =========================================================
   LV-Topbar Buttons — Settings-Zahnrad und verwandte Trigger
   Verwendet in: resources/views/lv/editor.blade.php
   Beispiel-Markup:
     <button class="lv-topbar-btn lv-topbar-settings-btn">
        <svg class="lv-topbar-icon" ...>...</svg>
     </button>
   ========================================================= */
.lv-topbar-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    height: 38px;
    padding: 0 16px;
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    font-family: abel, sans-serif;
    font-size: 16px;
    color: #4d4d4d;
    cursor: pointer;
    position: relative;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
    transition: border-color 0.18s, background-color 0.18s, color 0.18s, box-shadow 0.18s;
}
.lv-topbar-btn:hover {
    border-color: var(--bs_green_1, #72AE74);
    background: #f5faf5;
    color: var(--bs_green_1, #72AE74);
    box-shadow: 0 2px 6px rgba(114, 174, 116, 0.18);
}
.lv-topbar-btn .lv-topbar-icon {
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
    stroke: currentColor;
    color: #9ca3af;
    transition: color 0.18s, background-color 0.18s;
}
.lv-topbar-btn:hover .lv-topbar-icon { color: inherit; }

/* ---------------------------------------------------------------
   Die Maskenfassung des Topbar-Icons — ein leeres <span>, die Datei
   kommt aus --lv-icon.

   WARUM MASKE UND NICHT <img>: die Icons unter /images zeichnen mit
   `stroke="currentColor"`. In einem <img> ist das eine eigene, fremde
   Zeichnung — currentColor greift dort nicht, das Icon bleibt in seiner
   Dateifarbe stehen und macht den Hover nicht mit. Genau das war beim
   Zahnrad des LV-Editors der Fall: ein <img src="icon_settings_2.svg">
   mit fest eingebackenem #9ca3af, das als einziges der vier Icons beim
   Ueberfahren grau blieb.
   Eine Maske nimmt nur die Form; die Farbe kommt aus `background-color`,
   und mit `currentColor` haengt sie an derselben `color`-Kette wie ein
   echter <svg>-Knoten. Die Hover-Regel darueber gilt damit fuer beide
   Fassungen unveraendert.

   WARUM KEIN INLINE-SVG: siehe /design, Abschnitt 8b — inline erlaubt
   sind nur die 12 dort gefuehrten Muster (chevron, plus, trash, …). Alles
   andere gehoert als .svg unter /images, damit es in der Inventur steht
   und nicht in vier Blades vierfach gepflegt wird.
   --------------------------------------------------------------- */
.lv-topbar-btn span.lv-topbar-icon {
    display: block;
    background-color: currentColor;
    -webkit-mask: var(--lv-icon) no-repeat center / contain;
            mask: var(--lv-icon) no-repeat center / contain;
}
/* Welche Datei — je Bedeutung eine Klasse. Alle stammen aus der Inventur
   auf /design (Abschnitt 8c) und waren dort bis auf das Zahnrad unbenutzt.
   ⚠ Es gab kurz ein `.lv-topbar-icon-measurement` fuer einen vierten Knopf
   «zum Ausmass». Der Knopf ist am 18.09.2026 wieder entfernt worden — den
   Seitenwechsel macht der zentrierte Umschalter, nicht diese Leiste — und
   die Klasse mit ihm: eine Regel, die nichts mehr faerbt, liesse ihr Icon
   in der Inventur faelschlich als benutzt gelten. */
.lv-topbar-icon-history     { --lv-icon: url('/images/icon_history_1.svg'); }
.lv-topbar-icon-log         { --lv-icon: url('/images/icon_report_controlling.svg'); }
.lv-topbar-icon-settings    { --lv-icon: url('/images/icon_settings.svg'); }

/* Der quadratische Icon-Knopf: gleich hoch wie ein Knopf mit Beschriftung,
   aber genauso breit wie hoch. ⚠ `.lv-topbar-settings-btn` bleibt als
   zweiter Name bestehen — /design fuehrt ihn so, und die Inventur zeigt
   darauf. */
.lv-topbar-icon-btn,
.lv-topbar-settings-btn {
    width: 38px;
    padding: 0;
    justify-content: center;
    flex: 0 0 auto;
}

/* =========================================================
   LV-Settings-Popup (Lity-Popup mit Tabs + Sektionen)
   Verwendet in: resources/views/lv/editor.blade.php (#lv-settings-popup)
   Markup: <div class="lity-hide bs23_popup_1 lv-settings-popup" id="...">
             <div class="lv-settings-tabs"> ... </div>
             <div class="lv-settings-tab-pane is-active"> ... </div>
           </div>
   ========================================================= */
.lv-settings-popup {
    background: #fff;
    max-width: 560px;
    width: 90vw;
    padding: 24px 28px;
    border-radius: 10px;
}
.lv-settings-popup-title {
    margin: 0 0 18px;
    font-family: abel, sans-serif;
    font-size: 23px;
    font-weight: 600;
    color: #323232;
}
.lv-settings-row {
    display: grid;
    grid-template-columns: 180px 1fr;
    grid-template-rows: auto auto;
    gap: 8px 14px;
    align-items: center;
    padding: 14px 0;
    border-bottom: 1px solid #ebebeb;
}
.lv-settings-row:last-of-type { border-bottom: none; }
.lv-settings-label {
    font-family: abel, sans-serif;
    font-size: 16px;
    color: #323232;
    font-weight: 600;
}
.lv-settings-input { width: 120px; }
.lv-settings-input-wide { width: 100%; box-sizing: border-box; }
.lv-settings-hint {
    grid-column: 2 / 3;
    font-family: abel, sans-serif;
    font-size: 12px;
    color: #999;
}
.lv-settings-switch {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    justify-self: start;
}
.lv-settings-switch input[type="checkbox"] { display: none; }
.lv-settings-actions {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 18px;
}

/* Tab-Navigation oben im Settings-Popup */
.lv-settings-tabs {
    display: flex;
    gap: 4px;
    border-bottom: 1px solid #e8e8e8;
    margin: -8px -8px 18px;
    padding: 0 8px;
}
.lv-settings-tab {
    background: transparent;
    border: 0;
    border-bottom: 2px solid transparent;
    padding: 10px 16px;
    margin-bottom: -1px;
    font-family: abel, sans-serif;
    font-size: 16px;
    color: #888;
    cursor: pointer;
    transition: color .15s, border-color .15s;
}
.lv-settings-tab:hover {
    color: #fff;
    background: var(--bs_green_1, #72AE74);
}
.lv-settings-tab.is-active {
    color: var(--bs_green_1, #72AE74);
    border-bottom-color: var(--bs_green_1, #72AE74);
    font-weight: 600;
}
.lv-settings-tab.is-active:hover {
    color: #fff;
    background: var(--bs_green_1, #72AE74);
}
.lv-settings-tab-pane { display: none; }
.lv-settings-tab-pane.is-active { display: block; }

/* Sektionen innerhalb eines Tab-Panes */
.lv-design-section {
    margin-top: 22px;
    padding-top: 12px;
    border-top: 1px solid #ebebeb;
}
.lv-design-section:first-of-type {
    margin-top: 14px;
    padding-top: 0;
    border-top: none;
}
.lv-design-section-title {
    margin: 0 0 10px;
    font-family: abel, sans-serif;
    font-size: 20px;
    font-weight: 600;
    color: var(--bs_green_1, #72AE74);
}

/* Toggle-Switch (track + handle via ::after) */
.lv-filter-switch-track {
    position: relative;
    display: inline-block;
    width: 32px;
    height: 18px;
    background: #ccc;
    border-radius: 9px;
    transition: background 0.15s;
    flex: 0 0 auto;
}
.lv-filter-switch-track::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 14px;
    height: 14px;
    background: #fff;
    border-radius: 50%;
    transition: left 0.15s;
    box-shadow: 0 1px 2px rgba(0,0,0,0.2);
}
input[type="checkbox"]:checked + .lv-filter-switch-track { background: var(--bs_green_1, #72AE74); }
input[type="checkbox"]:checked + .lv-filter-switch-track::after { left: 16px; }

/* ============================================================================
   Deaktivierter Button — gleiche Optik wie deaktivierte Menuepunkte:
   gestrichelter Rahmen + feine Schraffur, ausgegraut, nicht klickbar.
   Der Cursor bleibt zeigbar (pointer-events aktiv), damit der Microtip mit der
   Begruendung ("aktiv nur im Report") ueberhaupt erscheinen kann.
   Verwendung: <button class="... bs23_button_off_1" disabled aria-label="..."
                data-microtip-position="top" role="tooltip">
   ========================================================================== */
.bs23_button_off_1,
.bs23_button_off_1:hover,
.bs23_button_off_1:focus,
.bs23_button_off_1:active {
	color: #6a706c !important;
	background-color: #F2F4F3 !important;
	background-image: repeating-linear-gradient(-45deg, transparent 0, transparent 6px, rgba(107,155,98,.07) 6px, rgba(107,155,98,.07) 12px) !important;
	border: 1px dashed #C4C9C5 !important;
	opacity: .75;
	cursor: default;
	box-shadow: none;
	}
.bs23_button_off_1 svg { stroke: #6a706c; }

/* ==========================================================================
   Eingabefeld-Zustaende (Pruefergebnis direkt am Feld).
   Loesen die frueheren dunklen Flaechen (#603031 / #5B6858 mit weisser Schrift)
   ab — die stammten aus dem alten dunklen Design und wirkten im hellen Layout
   wie ein Fehler. Muster wie bei .phase-empty im Report: heller Grund, farbiger
   Rand, normale Textfarbe (bleibt lesbar, auch beim Tippen).
   Verwendung: Klasse zusaetzlich zu bs23_input_1 setzen/entfernen.
   ========================================================================== */
.bs23_input_1.bs23_input_state_error,
.bs23_input_1.bs23_input_state_error:focus {
	background-color: #FDF6F6;
	border-color: #9B6262;
	color: #4B4B4B;
	}
.bs23_input_1.bs23_input_state_ok,
.bs23_input_1.bs23_input_state_ok:focus {
	background-color: #F3F9F2;
	border-color: #6B9B62;
	color: #4B4B4B;
	}

/* ---------------------------------------------------------------------------
   Fatal Error — Banner quer über die Seite
   Component: resources/views/components/fatal-error-banner.blade.php
   Vorlage: public/error_banner_mockup.html (Variante 1 "Vollfläche kräftig")

   Colours are the existing project error palette (components/info-box.blade.php,
   'error' style): #C62828 surface, #FBE9E9 muted text on red. No new colours.
   --------------------------------------------------------------------------- */
.bs23_fatal_error_1 {
	background-color: #C62828;
	color: #FFFFFF;
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 22px 26px;
	}
.bs23_fatal_error_1_icon {
	flex: none;
	display: flex;
	align-items: center;
	}
.bs23_fatal_error_1_icon img {
	display: block;
	}
.bs23_fatal_error_1_body {
	flex: 1;
	min-width: 0;
	}
.bs23_fatal_error_1_title {
	color: #FFFFFF;
	line-height: 1.25;
	margin: 0 0 4px 0;
	}
.bs23_fatal_error_1_text {
	color: #FBE9E9;
	line-height: 1.5;
	margin: 0;
	}
/* The support link is an <a>, so the global green button:hover does not reach it.
   Background and colour are still set explicitly here — should anyone turn this
   into a bare <button> later, the green hover would otherwise come back. */
.bs23_fatal_error_1_btn {
	background-color: #FFFFFF;
	color: #C62828;
	border: 1px solid #FFFFFF;
	border-radius: 6px;
	padding: 11px 20px;
	display: inline-flex;
	align-items: center;
	gap: 9px;
	flex: none;
	white-space: nowrap;
	text-decoration: none;
	cursor: pointer;
	}
.bs23_fatal_error_1_btn:hover {
	background-color: #FBE9E9;
	color: #C62828;
	text-decoration: none;
	}
.bs23_fatal_error_1_btn img {
	display: block;
	}
/* Icon and text stay on one line, the button wraps below and goes full width. */
@media (max-width: 700px) {
	.bs23_fatal_error_1 {
		flex-wrap: wrap;
		gap: 14px;
		padding: 18px 20px;
		}
	.bs23_fatal_error_1_btn {
		flex: 1 1 100%;
		justify-content: center;
		}
	}
/* `section-no-print` only exists inside report_formular.blade.php, so the banner
   carries its own print rule — it must never end up in a PDF. */
@media print {
	.bs23_fatal_error_1 {
		display: none !important;
		}
	}

/* ---------------------------------------------------------------------------
   Alert — farbiger Balken quer über die Seite, EINE Zeile hoch
   Component: resources/views/components/alert-banner.blade.php
   Lage im Rahmenlayout: public/styles/bs_menu_redesign.css (#bs_alert_bar)

   Betreiber-Meldung aus tbl_admin_setting.alert. Flach und ohne Knopf: sie
   meldet keinen Fehler, den jemand melden müsste.

   Drei Arten (Spalte alert_kind). Alle drei Töne sind im Projekt bereits in
   Gebrauch, es kommt KEINE neue Farbe dazu:
     _alert    #C62828  Fehlerpalette (components/info-box, fatal-error-banner)
     _warning  #D97910  --bs_orange_1
     _info     #168DCB  --bs_blue_1
   Weisser Text auf allen dreien — wie bei bs23_button_blue_1:hover etabliert.

   ⚠️ --alert-bar-h ist die EINZIGE Quelle der Bannerhöhe. bs_menu_redesign.css
   rechnet den Inhaltsbereich damit herunter — wer hier die Höhe ändert, ändert
   beides zugleich. Deshalb keine gemessene Höhe (wie --fatal-h) nötig: der Text
   bricht nicht um, die Höhe ist konstant.
   --------------------------------------------------------------------------- */
:root {
	--alert-bar-h: 38px;
	}
.bs23_alert_1 {
	background-color: #C62828;
	color: #FFFFFF;
	height: var(--alert-bar-h);
	box-sizing: border-box;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 0 26px;
	}
/* Art-Modifier — ändern NUR die Fläche. Aufbau, Höhe und weisse Schrift bleiben
   für alle drei gleich, damit der Balken immer als dasselbe Element erkennbar ist. */
.bs23_alert_1_alert {
	background-color: #C62828;
	}
.bs23_alert_1_warning {
	background-color: var(--bs_orange_1);
	}
.bs23_alert_1_info {
	background-color: var(--bs_blue_1);
	}
.bs23_alert_1_icon {
	flex: none;
	display: flex;
	align-items: center;
	}
.bs23_alert_1_icon img {
	display: block;
	}
/* Eine Zeile, Rest abgeschnitten. Der volle Wortlaut steht im title-Attribut —
   ein Umbruch würde die feste Bannerhöhe verletzen. */
.bs23_alert_1_text {
	flex: 1;
	min-width: 0;
	color: #FFFFFF;
	line-height: 1.3;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	}
/* Links im Meldungstext bleiben auf dem roten Grund lesbar. */
.bs23_alert_1_text a {
	color: #FFFFFF;
	text-decoration: underline;
	}
/* X ganz rechts — blendet den Balken für diesen Browser aus (Cookie, siehe AdminInfo).
   ⚠️ background und color MÜSSEN im :hover selbst gesetzt sein: ein nackter <button>
   wird sonst von der globalen Regel grün eingefärbt. Auf der farbigen Fläche wäre das
   ein Fremdkörper — hier hellt stattdessen ein weisser Schleier auf.
   ⚠️ Die Höhe ist bewusst kleiner als --alert-bar-h: der Knopf darf die feste
   Bannerhöhe nicht aufblähen, sonst stimmt der Versatz von #main_field_1 nicht mehr. */
.bs23_alert_1_close {
	flex: none;
	width: 26px;
	height: 26px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	margin-right: -6px;
	border: 0;
	border-radius: 4px;
	background: transparent;
	color: #FFFFFF;
	cursor: pointer;
	opacity: 0.85;
	transition: opacity 0.15s, background-color 0.15s;
	}
.bs23_alert_1_close:hover {
	background: rgba(255, 255, 255, 0.22);
	color: #FFFFFF;
	opacity: 1;
	}
.bs23_alert_1_close:focus-visible {
	outline: 2px solid #FFFFFF;
	outline-offset: 1px;
	}
.bs23_alert_1_close img {
	display: block;
	}
@media (max-width: 700px) {
	.bs23_alert_1 {
		gap: 9px;
		padding: 0 14px;
		}
	.bs23_alert_1_close {
		margin-right: -4px;
		}
	}
/* Wie beim Fatal-Error-Banner: gehört in keine Druckausgabe. */
@media print {
	.bs23_alert_1 {
		display: none !important;
		}
	}


/* ==========================================================================
   Cost cockpit (tendering/cockpit/{id}) — KPI tiles, chart card, grouped table
   ========================================================================== */
.bs23_cp_wrap { width: 100%; margin: 0; padding: 0 20px 60px; box-sizing: border-box; }
.bs23_cp_wrap * { box-sizing: border-box; }
.bs23_cp_chip { display: inline-flex; align-items: center; gap: 4px; border: 1px dashed #BDBDBD; background: #fff; border-radius: 16px;
	padding: 3px 11px; font-size: 16px; color: #525252; text-decoration: none; white-space: nowrap; }
.bs23_cp_chip:hover { background: #F1F7F1; color: #323232; border-color: var(--bs_green_1); }
.bs23_cp_chip b { color: #323232; font-weight: 600; }


.bs23_cp_kpis { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-bottom: 16px; }
.bs23_cp_kpi { background: #fff; border-radius: 8px; box-shadow: rgba(0,0,0,.08) 0 1px 4px; padding: 12px 14px; }
.bs23_cp_kpi_label { font-size: 16px; color: #A4A4A4; }
.bs23_cp_kpi_value { font-size: 23px; margin-top: 2px; font-variant-numeric: tabular-nums; color: #323232; }
.bs23_cp_kpi_sub { font-size: 12px; color: #525252; margin-top: 2px; }
.bs23_cp_kpi.is-good .bs23_cp_kpi_value { color: var(--bs_green_1); }
.bs23_cp_kpi.is-bad .bs23_cp_kpi_value { color: #C62828; }
.bs23_cp_meter { height: 6px; background: #F2F2F2; border-radius: 3px; margin-top: 8px; overflow: hidden; }
.bs23_cp_meter i { display: block; height: 100%; background: var(--bs_green_1); }

.bs23_cp_card { background: #fff; border-radius: 8px; box-shadow: rgba(0,0,0,.08) 0 1px 4px; padding: 14px 16px; margin-bottom: 16px; }
.bs23_cp_card_head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 8px; flex-wrap: wrap; }
.bs23_cp_card_head h2 { margin: 0; font-size: 20px; font-weight: 400; color: #323232; }
.bs23_cp_legend { display: flex; gap: 14px; font-size: 12px; color: #525252; flex-wrap: wrap; }
.bs23_cp_legend i { display: inline-block; width: 16px; height: 3px; vertical-align: middle; margin-right: 5px; }
.bs23_cp_legend i.is-band { height: 10px; background: rgba(22,141,203,.12); border: 1px dashed rgba(22,141,203,.5); }
.bs23_cp_chart { position: relative; height: 240px; }

.bs23_cp_search { border: 1px solid #E7E7E7; border-radius: 6px; padding: 5px 10px; font-size: 16px; font-family: inherit; width: 220px; background: #fff; }
.bs23_cp_search:focus { outline: none; border-color: var(--bs_green_1); }

.bs23_cp_scroll { overflow-x: auto; }
table.bs23_cp_table { width: 100%; border-collapse: collapse; font-size: 16px; min-width: 900px; }
table.bs23_cp_table th { text-align: right; font-weight: 400; color: #A4A4A4; font-size: 16px; padding: 6px 8px; border-bottom: 1px solid #E7E7E7; white-space: nowrap; background: none; }
table.bs23_cp_table th.is-left, table.bs23_cp_table td.is-left { text-align: left; }
table.bs23_cp_table td { padding: 6px 8px; border-bottom: 1px solid #F1F1F1; text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; color: #323232; font-size: 16px; }
table.bs23_cp_table td.is-name { white-space: normal; }
table.bs23_cp_table .is-sep { border-left: 2px solid #E7E7E7; }
table.bs23_cp_table tr.bs23_cp_headgroups th { border-bottom: 0; padding-bottom: 0; }
table.bs23_cp_table th.bs23_cp_headgroup { text-align: left; color: #323232; font-size: 18px; padding-left: 10px; }
table.bs23_cp_table th.bs23_cp_headgroup::after { content: ""; display: block; height: 2px; background: var(--bs_green_1); margin-top: 4px; border-radius: 1px; }
table.bs23_cp_table tr.bs23_cp_row:hover td { background: #FAFAFA; }
table.bs23_cp_table tr.bs23_cp_group td { background: #F7F7F7; font-weight: 600; border-bottom: 1px solid #E7E7E7; cursor: pointer; user-select: none; }
table.bs23_cp_table tr.bs23_cp_group td .bs23_cp_twist { display: inline-block; width: 14px; color: #A4A4A4; }
/* long group names wrap instead of widening the number/name columns */
table.bs23_cp_table td.is-name { min-width: 180px; }
/* hierarchy: main group (band + green edge) > group (indented) > work type (guide line) */
table.bs23_cp_table td.bs23_cp_title { white-space: normal; max-width: 300px; }
table.bs23_cp_table tr.bs23_cp_group.is-main td { background: #EEF3EC; font-size: 18px; font-weight: 600; color: #323232; border-top: 10px solid #fff; border-bottom: 1px solid #D9E5D5; }
table.bs23_cp_table tr.bs23_cp_group.is-main td.bs23_cp_title { box-shadow: inset 4px 0 0 var(--bs_green_1); padding-left: 12px; }
table.bs23_cp_table tr.bs23_cp_group.is-sub td { background: #FAFAFA; font-weight: 600; color: #525252; border-bottom: 1px solid #EFEFEF; }
table.bs23_cp_table tr.bs23_cp_group.is-sub td.bs23_cp_title { padding-left: 30px;
	background: #FAFAFA linear-gradient(#C9D9C5, #C9D9C5) no-repeat 17px 0 / 2px 100%; }
table.bs23_cp_table td.bs23_cp_nr { padding-left: 50px; color: #525252;
	background: linear-gradient(#C9D9C5, #C9D9C5) no-repeat 17px 0 / 2px 100%, linear-gradient(#E3E3E3, #E3E3E3) no-repeat 36px 0 / 1px 100%; }
table.bs23_cp_table tr.bs23_cp_row.is-flat td.bs23_cp_nr { padding-left: 30px;
	background: linear-gradient(#C9D9C5, #C9D9C5) no-repeat 17px 0 / 2px 100%; }
table.bs23_cp_table tr.bs23_cp_row:hover td.bs23_cp_nr { background-color: #FAFAFA; }
table.bs23_cp_table tr.bs23_cp_total td { font-weight: 600; font-size: 18px !important; border-top: 2px solid #393939; border-bottom: 0; }
table.bs23_cp_table .is-muted { color: #C9C9C9; }
table.bs23_cp_table .is-pos { color: var(--bs_green_1); }
table.bs23_cp_table .is-neg { color: #C62828; }

/* fields edited in place: dashed underline shows they are editable */
.bs23_cp_kv, .bs23_cp_date { border: 1px solid transparent; border-bottom: 1px dashed #C4C9C5; border-radius: 4px; padding: 3px 6px;
	font-family: inherit; font-size: 16px; background: transparent; font-variant-numeric: tabular-nums; color: inherit; cursor: text;
	transition: background .3s, border-color .3s; }
.bs23_cp_kv { width: 120px; text-align: right; }
.bs23_cp_date { width: 104px; text-align: left; cursor: pointer; }
/* house rule input[type=text][readonly] disables the mouse; the date field is readonly only to force the picker */
input[type="text"][readonly].bs23_cp_date { pointer-events: auto; }
.bs23_cp_date::placeholder { color: #C9C9C9; }
.bs23_cp_kv:hover, .bs23_cp_date:hover { border-color: #D5D5D5; background: #fff; }
.bs23_cp_kv:focus, .bs23_cp_date:focus { outline: none; border-color: var(--bs_green_1); background: #fff; }
.bs23_cp_kv.is-saved, .bs23_cp_date.is-saved { background: #F1F7F1; border-color: var(--bs_green_1); }
.bs23_cp_kv.is-failed, .bs23_cp_date.is-failed { background: #FEF4F5; border-color: #C62828; }

.bs23_cp_pill { display: inline-flex; align-items: center; gap: 5px; border-radius: 10px; padding: 1px 8px; font-size: 12px; border: 1px dashed; text-decoration: none; white-space: nowrap; }
/* dot as its own element: microtip already uses ::before/::after on role="tooltip" */
.bs23_cp_dot { width: 6px; height: 6px; border-radius: 50%; background: currentColor; flex: 0 0 6px; }
a.bs23_cp_pill:hover { filter: brightness(.95); text-decoration: underline; }
.bs23_cp_pill.is-green  { color: var(--bs_green_1); background: #F1F7F1; border-color: #B8D3B3; }
.bs23_cp_pill.is-blue   { color: var(--bs_blue_1); background: #EEF6FB; border-color: #9CCBE6; }
.bs23_cp_pill.is-orange { color: var(--bs_orange_1); background: #FFF4E5; border-color: #F5C98A; }
.bs23_cp_pill.is-red    { color: #C62828; background: #FEF4F5; border-color: #EBA9A9; }
.bs23_cp_pill.is-grey   { color: #A4A4A4; background: #fff; border-color: #D5D5D5; }
.bs23_cp_offers { font-size: 12px; color: #525252; margin-left: 6px; }

.bs23_cp_dev { display: inline-flex; align-items: center; gap: 6px; justify-content: flex-end; }
.bs23_cp_dev_pct { display: inline-block; min-width: 58px; text-align: right; font-size: 12px; color: #7A7A7A; }
.bs23_cp_dev_bar { width: 46px; height: 5px; background: #F2F2F2; border-radius: 3px; position: relative; overflow: hidden; }
.bs23_cp_dev_bar i { position: absolute; top: 0; bottom: 0; }

table.bs23_cp_table .bs23_cp_act { width: 48px; padding: 0 6px 0 10px; text-align: center; border-left: 1px dashed #DADADA; }
button.bs23_cp_open { border: 1px solid #CFE2CB; background: #F1F7F1; width: 30px; height: 30px; border-radius: 50%; cursor: pointer;
	color: var(--bs_green_1); font-size: 18px; line-height: 1; padding: 0 0 2px 1px; transition: background .15s, color .15s, transform .15s; }
button.bs23_cp_open:hover { background: var(--bs_green_1); color: #fff; border-color: var(--bs_green_1); transform: translateX(2px); }
tr.bs23_cp_row:hover button.bs23_cp_open { border-color: var(--bs_green_1); }

.bs23_cp_foot { display: flex; justify-content: space-between; align-items: center; margin-top: 10px; gap: 10px; flex-wrap: wrap; }
a.bs23_cp_add { border: 1px dashed var(--bs_green_1); color: var(--bs_green_1); background: #fff; border-radius: 16px; padding: 4px 14px; font-size: 16px; text-decoration: none; }
a.bs23_cp_add:hover { background: #F1F7F1; color: #323232; }

/* Popup «Detailinformationen» of a cost row (cockpit.blade.php, #details)
   Mockup: mockups/cockpit_detailinformationen_baukosten_mockup_20261015.html */
.cp_dt_popup { max-width: 580px; }
.cp_dt_head { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin: -6px 0 14px; }
.cp_dt_head a { text-decoration: none; }
.cp_dt_chip { display: inline-flex; align-items: center; gap: 4px; border: 1px solid #E7E7E7; background: #fff; border-radius: 16px; padding: 2px 10px; font-size: 12px; color: #525252; white-space: nowrap; }
.cp_dt_chip b { font-weight: 400; color: #323232; }
a .cp_dt_chip:hover, a.cp_dt_chip:hover { background: #F1F7F1; border-color: var(--bs_green_1); color: #323232; }
.cp_dt_chip.is-off { color: #A4A4A4; }
.cp_dt_chip.is-dashed { border-style: dashed; border-color: #BDBDBD; }
.cp_dt_delete { margin-left: auto; }
.cp_dt_fields { display: grid; grid-template-columns: 130px 1fr; gap: 8px 14px; align-items: center; }
.cp_dt_fields .bs23_input_1 { width: 100%; box-sizing: border-box; }
.cp_dt_sec { font-size: 18px; color: #323232; margin: 16px 0 8px; }
.cp_dt_steps { display: flex; align-items: stretch; }
.cp_dt_st { flex: 1 1 0; min-width: 0; border: 1px solid #E7E7E7; border-radius: 6px; padding: 6px 8px; background: #fff; margin: 0; }
.cp_dt_st span { display: block; font-size: 12px; color: #A4A4A4; white-space: nowrap; }
.cp_dt_st b { font-weight: 400; font-variant-numeric: tabular-nums; }
.cp_dt_st.is-target { background: #F7F7F7; border-color: #BDBDBD; cursor: pointer; }
.cp_dt_st.is-target span::before { content: "⚑ "; }
.cp_dt_st.is-done { background: #F1F7F1; border-color: #CFE2CB; }
.cp_dt_st.is-done span::after { content: " ✓"; color: var(--bs_green_1); }
.cp_dt_st.is-empty { border-style: dashed; color: #C9C9C9; }
.cp_dt_st.is-late { background: #FEF4F5; border-color: #F3C5C5; }
.cp_dt_st.is-late b, .cp_dt_st.is-late input { color: #B23B3B; }
.cp_dt_st.is-late span::after { content: " !"; color: #B23B3B; }
.cp_dt_gap { flex: 0 0 14px; }
.cp_dt_line { flex: 0 0 14px; align-self: center; height: 2px; background: #E0E0E0; }
.cp_dt_line.is-done { background: #CFE2CB; }
/* the planned date is typed into the target tile itself */
input[type="text"].cp_dt_dateinput { width: 100%; border: 0; padding: 0; margin: 0; background: transparent; font: inherit; color: #323232; cursor: pointer; pointer-events: auto; }
input[type="text"].cp_dt_dateinput:focus { outline: none; }
.cp_dt_grid { display: grid; grid-template-columns: 100px 1fr 1.2fr; border: 1px solid #E7E7E7; border-radius: 8px; overflow: hidden; }
.cp_dt_grid > div { padding: 7px 10px; border-bottom: 1px solid #F1F1F1; min-height: 38px; display: flex; align-items: center; }
.cp_dt_grid > .is-r { justify-content: flex-end; font-variant-numeric: tabular-nums; }
.cp_dt_grid > .is-h { background: #F7F7F7; color: #A4A4A4; border-bottom-color: #E7E7E7; }
.cp_dt_grid > .is-h.is-r { color: #323232; }
.cp_dt_grid > .is-k { color: #525252; }
.cp_dt_grid > .is-tot { font-weight: 600; border-bottom: 0; background: #FAFAFA; }
.cp_dt_grid > .is-sep { border-left: 2px solid #E7E7E7; }
.cp_dt_grid .bs23_cp_kv { font-weight: inherit; max-width: 150px; width: 100%; }
.cp_dt_muted { color: #C9C9C9; }
.cp_dt_who { display: flex; flex-direction: column; align-items: flex-end; gap: 2px; text-align: right; }
.cp_dt_who b { font-weight: 400; }
.cp_dt_who small, .cp_dt_ph small { display: block; font-size: 12px; color: #A4A4A4; }
.cp_dt_ph { width: 100%; text-align: center; color: #A4A4A4; border: 1px dashed #D5D5D5; border-radius: 6px; padding: 6px 8px; background: #FCFCFC; font-weight: 400; }
.cp_dt_diff { margin-top: 8px; padding: 10px 12px; border-radius: 8px; background: #F7F7F7; color: #525252; }
.cp_dt_dev_head { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.cp_dt_dev_val { margin-left: auto; font-weight: 400; font-size: 18px; font-variant-numeric: tabular-nums; }
.cp_dt_dev_val.is-green { color: #2E7D32; }
.cp_dt_dev_val.is-orange { color: var(--bs_orange_1); }
.cp_dt_dev_val.is-red { color: #C62828; }
.bs23_cp_pill.cp_dt_dev_pct { font-size: 16px; border-style: solid; }
.bs23_cp_pill.cp_dt_dev_pct.is-red { color: #C62828; background: #FEF4F5; border-color: #F3C5C5; }
.cp_dt_dev_row { display: grid; grid-template-columns: 70px 1fr 110px; gap: 10px; align-items: center; margin-top: 4px; }
.cp_dt_dev_row span { font-size: 12px; color: #A4A4A4; }
.cp_dt_dev_row b { font-weight: 400; text-align: right; font-variant-numeric: tabular-nums; }
.cp_dt_dev_track { position: relative; height: 12px; background: #fff; border-radius: 6px; }
.cp_dt_dev_track i { position: absolute; top: 0; bottom: 0; left: 0; border-radius: 6px; }
.cp_dt_dev_track i.is-kv { background: var(--bs_blue_1); opacity: .55; }
.cp_dt_dev_track i.is-offer { background: #9E9E9E; opacity: .55; }
.cp_dt_dev_track i.is-delta { border-radius: 0; opacity: .9; }
.cp_dt_dev_track i.is-delta.is-green { background: repeating-linear-gradient(45deg, #7DB874 0 4px, #CFE2CB 4px 8px); }
.cp_dt_dev_track i.is-delta.is-orange { background: #F5C98A; }
.cp_dt_dev_track i.is-delta.is-red { background: #E57373; }
/* accuracy of the KV: two dashed lines over the bar, hover shows the tooltip */
/* microtip turns [role=tooltip] into position:relative - keep the band absolute */
.cp_dt_dev_track .cp_dt_dev_band[role~="tooltip"] { position: absolute; display: block; }
.cp_dt_dev_band { position: absolute; top: -3px; bottom: -3px; background: rgba(14, 111, 163, .06); border-left: 1px dashed var(--bs_blue_1); border-right: 1px dashed var(--bs_blue_1); z-index: 2; }
.cp_dt_switch { display: flex; align-items: center; justify-content: space-between; margin-top: 14px; }
.cp_dt_note { width: 100%; box-sizing: border-box; resize: none; }
@media (max-width: 560px) {
	.cp_dt_steps { flex-wrap: wrap; gap: 8px; }
	.cp_dt_st { flex: 1 1 40%; }
	.cp_dt_gap, .cp_dt_line { display: none; }
	.cp_dt_fields { grid-template-columns: 1fr; }
	.cp_dt_grid { grid-template-columns: 80px 1fr 1fr; }
}

/* Column titles of the cost table: edited directly in the header (like the KV field in the rows) */
input.bs23_cp_coltitle { field-sizing: content; min-width: 3ch; max-width: 220px; border: 1px solid transparent; border-bottom: 1px dashed #D5D5D5;
	border-radius: 4px; padding: 1px 4px; margin: 0 -5px; font: inherit; color: inherit; text-align: inherit; background: transparent; cursor: text;
	transition: background .3s, border-color .3s; }
input.bs23_cp_coltitle:hover { border-color: #D5D5D5; background: #fff; }
input.bs23_cp_coltitle:focus { outline: none; border-color: var(--bs_green_1); background: #fff; color: #323232; }
input.bs23_cp_coltitle::placeholder { color: #C9C9C9; }
input.bs23_cp_coltitle.is-saved { background: #F1F7F1; border-color: var(--bs_green_1); }
input.bs23_cp_coltitle.is-failed { background: #FEF4F5; border-color: #C62828; }

@media (max-width: 800px) {
	.bs23_cp_kpis { grid-template-columns: 1fr; }
	.bs23_cp_search { width: 150px; }
}

/* ==========================================================================
   Share popup <x-share-link-popup> (rebuilt 16.10.2026, mockup share_link_popup_mockup_20261016.html)
   One card per link: link row, meta line, collapsible options; accesses in a second dialog.
   ========================================================================== */
.slp-ico { display: inline-block; width: 22px; height: 22px; flex-shrink: 0; background: currentColor;
	-webkit-mask: var(--slp-ico) no-repeat center / contain; mask: var(--slp-ico) no-repeat center / contain; }
.slp-ico-copy { --slp-ico: url(/images/icon_copy.svg); }
.slp-ico-mail { --slp-ico: url(/images/nav_button_sub_mail.svg); }
.slp-ico-trash { --slp-ico: url(/images/icon_trash_2.svg); }
.slp-ico-chev { --slp-ico: url(/images/icon_chevron_down.svg); width: 16px; height: 16px; transition: transform .2s; }
.slp-ico-history { --slp-ico: url(/images/icon_history_1.svg); }
.slp-ico-settings { --slp-ico: url(/images/icon_settings.svg); }
.slp-ico-check { --slp-ico: url(/images/icon_check.svg); width: 16px; height: 16px; }
.slp-ico-lupe { --slp-ico: url(/images/icon_lupe.svg); width: 18px; height: 18px; }

/* no own scroll area: the tooltips below the buttons would make it scroll; the dialog grows instead */
.slp-list { padding: 2px; }
.slp-card { border: 1px solid #E3E3E3; border-radius: 6px; padding: 12px; margin-bottom: 12px; background: #fff; }
.slp-card:last-child { margin-bottom: 0; }
.slp-card.is-new { animation: slpFlash 1.2s ease-out; }
@keyframes slpFlash { 0% { box-shadow: 0 0 0 3px rgba(114,174,116,.6); } 100% { box-shadow: 0 0 0 0 rgba(114,174,116,0); } }
.slp-linkrow { display: flex; gap: 8px; align-items: center; }
/* house rule makes readonly text inputs unclickable - the link must stay selectable */
input.slp-link-input[readonly] { pointer-events: auto; }
.slp-link-input { flex: 1; min-width: 0; height: 44px; padding: 0 14px; border: 1px solid #ccc; border-radius: 5px; color: #333; background: #fff; }
button.slp-iconbtn { width: 44px; height: 44px; padding: 0; border: 1px solid #ccc; border-radius: 5px; background: #fff; color: #555;
	display: flex; align-items: center; justify-content: center; cursor: pointer; flex-shrink: 0; }
button.slp-iconbtn:hover { background: #F0F0F0; color: var(--bs_green_1); border-color: #bbb; }
button.slp-iconbtn.is-done { color: var(--bs_green_1); border-color: var(--bs_green_1); }
button.slp-iconbtn.is-del:hover { background: #FDEDEC; color: #C0392B; border-color: #E6B0AA; }
button.slp-iconbtn.is-small { width: 36px; height: 36px; }
button.slp-iconbtn.is-small .slp-ico { width: 18px; height: 18px; }
button.slp-expand.is-open .slp-ico-chev { transform: rotate(180deg); }
.slp-meta { display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 8px 2px 0; color: #7A7A7A; }
.slp-chip { display: inline-flex; align-items: center; gap: 5px; }
.slp-chip.is-title { color: #323232; }
.slp-chip.is-warn { color: #C0392B; }
.slp-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--bs_green_1); }
.slp-chip.is-warn .slp-dot { background: #C0392B; }
button.slp-chip-btn { font-size: inherit; font-family: inherit; background: transparent; border: 0; padding: 0; cursor: pointer; color: var(--bs_blue_1, #168DCB);
	display: inline-flex; align-items: center; gap: 4px; }
button.slp-chip-btn:hover { background: transparent; color: var(--bs_green_1); }
button.slp-chip-btn .slp-ico { width: 16px; height: 16px; }
button.slp-chip-btn[disabled] { color: #7A7A7A; cursor: default; }
.slp-expired { margin-top: 10px; padding: 8px 12px; border-radius: 5px; background: #FDEDEC; color: #C0392B;
	display: flex; align-items: center; justify-content: space-between; gap: 10px; }

.slp-panel { display: none; margin-top: 10px; padding: 10px 2px 4px; border-top: 1px solid #F0F0F0; }
.slp-panel.is-open { display: block; }
.slp-grid { display: grid; grid-template-columns: 140px 1fr; gap: 10px 14px; align-items: start; }
.slp-grid > .slp-label { padding-top: 6px; }
.slp-grid [hidden], .slp-inline[hidden] { display: none; }
.slp-switch { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; user-select: none; }
.slp-switch input { display: none; }
.slp-track { width: 38px; height: 22px; border-radius: 11px; background: #CFCFCF; position: relative; transition: background .2s; flex-shrink: 0; }
.slp-track::after { content: ''; position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%; background: #fff; transition: left .2s; }
.slp-switch input:checked + .slp-track { background: var(--bs_green_1); }
.slp-switch input:checked + .slp-track::after { left: 19px; }
.slp-stack { display: flex; flex-direction: column; gap: 6px; padding-top: 6px; }
.slp-inline { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.slp-inline .bs23_input_1 { flex: 1 1 160px; height: 36px; }
.slp-max { max-width: 160px; height: 36px; }
.slp-saveline { text-align: right; margin-top: 6px; min-height: 20px; }
.slp-saved { display: inline-flex; align-items: center; gap: 4px; color: var(--bs_green_1); opacity: 0; transition: opacity .3s; }
.slp-saved.is-shown { opacity: 1; }
.slp-created { border-top: 1px solid #F0F0F0; padding-top: 8px; color: #7A7A7A; }
.slp-empty, .slp-loading { padding: 24px 0; text-align: center; color: #7A7A7A; }

.slp-footer { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 6px; padding-top: 12px; border-top: 1px solid #EEE; flex-wrap: wrap; }
button.slp-linkbtn { font-family: inherit; background: transparent; border: 0; color: var(--bs_blue_1, #168DCB); cursor: pointer; padding: 4px 2px;
	display: inline-flex; align-items: center; gap: 6px; }
button.slp-linkbtn:hover { background: transparent; color: var(--bs_green_1); }

/* accesses dialog */
.slp-search { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.slp-search-field { position: relative; flex: 1 1 220px; }
.slp-search-field .slp-ico { position: absolute; left: 10px; top: 50%; transform: translateY(-50%); color: #9A9A9A; pointer-events: none; }
.slp-search-field .bs23_input_1 { height: 38px; padding-left: 36px; }
.slp-count { margin: 10px 2px 6px; color: #7A7A7A; }
.slp-log { max-height: 46vh; overflow-y: auto; border: 1px solid #EEE; border-radius: 5px; }
.slp-log-row { display: grid; grid-template-columns: 170px 1fr 1fr; gap: 8px; padding: 6px 10px; border-bottom: 1px solid #F3F3F3; }
.slp-log-row:last-child { border-bottom: 0; }
.slp-log-row .is-grey { color: #7A7A7A; }
.slp-log-head { position: sticky; top: 0; background: #F7F7F7; color: #7A7A7A; }
.slp-log mark { background: #FFF2C8; color: inherit; padding: 0 1px; border-radius: 2px; }
.slp-log-empty { padding: 20px; text-align: center; color: #7A7A7A; }

@media (max-width: 600px) {
	.slp-grid { grid-template-columns: 1fr; gap: 4px 0; }
	.slp-log-row { grid-template-columns: 1fr; gap: 0; }
	.slp-log-head { display: none; }
	button.slp-iconbtn { width: 38px; height: 38px; }
	.slp-link-input { height: 38px; padding: 0 8px; }
}

/* ==========================================================================
   Narrow Lity popup (e.g. project role of an external person, projectmembers) — 19.10.2026
   ========================================================================== */
.bs23_popup_narrow_1 { max-width: 460px; padding: 20px; }
.bs23_popup_narrow_1_row { margin: 16px 0 6px; }
.bs23_popup_narrow_1_row label { display: inline-block; margin-bottom: 4px; }
.bs23_popup_narrow_1_row .bs23_dropdown_1 { width: 100%; }
.bs23_popup_narrow_1_help { display: inline-block; width: 16px; height: 16px; margin-left: 4px; vertical-align: -2px; background: #767676;
	-webkit-mask: url(../images/icon_alert.svg) center / contain no-repeat; mask: url(../images/icon_alert.svg) center / contain no-repeat; }
.bs23_popup_narrow_1_foot { display: flex; justify-content: flex-end; gap: 10px; margin-top: 16px; flex-wrap: wrap; }

/* ==========================================================================
   Popup "Rechte im Projekt" <x-permissions.project-rights-popup> — 19.10.2026
   (mockup externe_projektrechte_mockup_20261019.html). Contrast, calculated:
   #9A5208 on #FFF1E0 = 5.28:1, #336B35 on #EAF4E9 = 5.65:1, #0E6FA3 on #EEF6FB = 5.03:1,
   #525252 on #F7F7F7 = 7.29:1, #767676 on white = 4.54:1.
   ========================================================================== */
.bs23_rights_pop { width: 760px; max-width: 94vw; padding: 20px 22px 16px; }
.bs23_rights_pop_title { display: block; padding-right: 40px; }
.bs23_rights_pop_sub { display: block; color: #525252; margin-top: 2px; }
.bs23_rights_pop_src { display: flex; gap: 12px; align-items: flex-start; border-radius: 8px; padding: 10px 12px; margin: 14px 0 8px; }
.bs23_rights_pop_src b { display: block; font-weight: 400; }
.bs23_rights_pop_src > span > span { display: block; color: #525252; }
.bs23_rights_pop_src.proj { background: #FFF1E0; color: #9A5208; }
.bs23_rights_pop_src.firm { background: #EAF4E9; color: #336B35; }
.bs23_rights_pop_src.def  { background: #EEF6FB; color: #0E6FA3; }
.bs23_rights_pop_src.adm  { background: #F7F7F7; color: #525252; }
.bs23_rights_pop_src_ic { flex: 0 0 22px; width: 22px; height: 22px; margin-top: 1px; background: currentColor;
	-webkit-mask: url(../images/icon_shield_admin_1.svg) center / contain no-repeat; mask: url(../images/icon_shield_admin_1.svg) center / contain no-repeat; }
.bs23_rights_pop_note { margin: 0 0 8px; color: #767676; }
.bs23_rights_pop_tools { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; margin: 6px 0 8px; }
.bs23_rights_pop_tools[hidden], .bs23_rights_pop_src[hidden], .bs23_rights_pop_note[hidden] { display: none; }
.bs23_rights_pop_seg { display: inline-flex; background: #EDEDED; border-radius: 16px; padding: 3px; }
.bs23_rights_pop_seg button { border: 0; background: transparent; padding: 4px 12px; border-radius: 13px; font-family: inherit;
	font-size: 16px; color: #6B6B6B; cursor: pointer; }
/* the global button:hover paints every bare button green */
.bs23_rights_pop_seg button:hover { background: #FFFFFF; color: #323232; }
.bs23_rights_pop_seg button.on { background: #EAF4E9; color: #323232; }
.bs23_rights_pop_count { color: #525252; }
.bs23_rights_pop_grp { border: 1px solid #E7E7E7; border-radius: 8px; margin: 8px 0; overflow: hidden; }
.bs23_rights_pop_grp_h { display: flex; justify-content: space-between; align-items: center; gap: 10px; background: #F7F7F7; padding: 6px 12px; }
.bs23_rights_pop_grp_h .bs23_label_size_0 { color: #525252; }
.bs23_rights_pop_grp ul { list-style: none; margin: 0; padding: 4px 0; columns: 2; column-gap: 0; }
.bs23_rights_pop_grp li { display: flex; align-items: center; gap: 8px; padding: 3px 12px; break-inside: avoid; font-size: 16px; }
.bs23_rights_pop_grp li .m { flex: 0 0 16px; width: 16px; height: 16px; background: currentColor; }
.bs23_rights_pop_grp li.y { color: #323232; }
.bs23_rights_pop_grp li.y .m { color: #72AE74;
	-webkit-mask: url(../images/icon_check.svg) center / contain no-repeat; mask: url(../images/icon_check.svg) center / contain no-repeat; }
.bs23_rights_pop_grp li.n { color: #767676; }
.bs23_rights_pop_grp li.n .m { color: #BDBDBD; flex: 0 0 10px; width: 10px; height: 2px; margin: 0 3px; }
.bs23_rights_pop_grp.off { opacity: .8; }
.bs23_rights_pop.only-yes .bs23_rights_pop_grp li.n { display: none; }
.bs23_rights_pop_foot { display: flex; justify-content: flex-end; gap: 10px; margin-top: 14px; flex-wrap: wrap; }
.bs23_rights_pop_foot [hidden] { display: none; }
.bs23_rights_pop_foot .bs23_rights_pop_remove { margin-right: auto; }
/* optional block of the opening page above the rights (project_members: role in this project, 19.10.2026) */
.bs23_rights_pop_extra { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 6px 0 10px; }
.bs23_rights_pop_extra[hidden] { display: none; }
@media (max-width: 700px) {
	.bs23_rights_pop_grp ul { columns: 1; }
}

/* Hover card of the component (bsProjectRights.hover, members matrix 19.10.2026): source, missing rights and all rights
   per group; the mouse can move onto it, the rights list scrolls. Text #323232 / #525252 on white = 12.82:1 / 7.81:1 (calculated). */
.bs23_rights_card { position: absolute; z-index: 10000; width: 360px; max-width: calc(100vw - 16px); max-height: 70vh;
	display: flex; flex-direction: column; overflow: hidden;
	background: #FFFFFF; border: 1px solid #E7E7E7; border-radius: 8px; box-shadow: 0 6px 24px rgba(0, 0, 0, .16); }
.bs23_rights_card[hidden], .bs23_rights_card_bridge[hidden] { display: none; }
/* white strip between cell and card, drawn over the card border so both look joined */
.bs23_rights_card_bridge { position: absolute; z-index: 10001; background: #FFFFFF; }
.bs23_rights_card_top { flex: 0 0 auto; padding: 10px 12px 6px; border-bottom: 1px solid #F1F1F1; }
.bs23_rights_card_body { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 4px 12px 10px; }
.bs23_rights_card_grp { margin-top: 6px; }
.bs23_rights_card_grp_h { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; padding: 4px 0 2px; }
.bs23_rights_card_grp_h b { font-weight: 400; font-size: 16px; color: #323232; }
.bs23_rights_card_grp_h span { font-size: 12px; color: #525252; }
.bs23_rights_card_grp li { display: flex; align-items: center; gap: 6px; padding: 2px 0; font-size: 12px; line-height: 1.35; }
.bs23_rights_card_grp li .m { flex: 0 0 12px; width: 12px; height: 12px; background: currentColor; }
.bs23_rights_card_grp li.y { color: #323232; }
.bs23_rights_card_grp li.y .m { color: #72AE74;
	-webkit-mask: url(../images/icon_check.svg) center / contain no-repeat; mask: url(../images/icon_check.svg) center / contain no-repeat; }
/* #A05555 on white = 5.35:1 (calculated) */
.bs23_rights_card_grp li.n { color: #A05555; }
.bs23_rights_card_grp li.n .m { color: #D9A3A3; flex: 0 0 8px; width: 8px; height: 2px; margin: 0 2px; }
.bs23_rights_card_h { color: #323232; }
.bs23_rights_card_src { margin: 6px 0 2px; padding: 4px 8px; border-radius: 6px; font-size: 16px; }
.bs23_rights_card_src.project { background: #FFF1E0; color: #9A5208; }
.bs23_rights_card_src.company { background: #EAF4E9; color: #336B35; }
.bs23_rights_card_src.external_default { background: #EEF6FB; color: #0E6FA3; }
.bs23_rights_card_src.admin { background: #F7F7F7; color: #525252; }
.bs23_rights_card_n { color: #525252; margin: 4px 0 6px; }
/* #A05555 on #FBF1F1 = 4.83:1 (calculated) */
.bs23_rights_card_no { margin: 0 0 6px; padding: 4px 8px; border-radius: 6px; background: #FBF1F1; color: #A05555; font-size: 12px; line-height: 1.35; }
.bs23_rights_card_no b { font-weight: 400; font-size: 16px; display: block; }
.bs23_rights_card ul { list-style: none; margin: 0; padding: 0; }

/* ==========================================================================
   Project rights page (permissions/project.blade.php), rebuilt 20.10.2026 after
   mockups/projektrechte_rollen_ideen_mockup_20261019.html (ideas I2, I3, I5, I8, I9, I10).
   Prefix pr- ; the shared pv- classes stay in permissions/_styles.blade.php.
   ========================================================================== */
.pr-ic { display: inline-block; width: 17px; height: 17px; flex: none; background: currentColor;
	-webkit-mask: var(--pr-i) center / contain no-repeat; mask: var(--pr-i) center / contain no-repeat; }
.pr-ic-add     { --pr-i: url(/images/icon_add.svg); }
.pr-ic-edit    { --pr-i: url(/images/icon_edit.svg); }
.pr-ic-search  { --pr-i: url(/images/icon_search_stroke_1.svg); }
.pr-ic-chevron { --pr-i: url(/images/icon_chevron_down_stroke_1.svg); transform: rotate(-90deg); transition: transform .15s ease; }
#main_field_1 .bph-btn .pr-ic { width: 19px; height: 19px; }

.pr-body { padding: 16px 18px 18px; }
.pr-leer { margin: 0 0 12px; line-height: 1.45; }
.pr-grau { color: #929292; }
.pr-flex { flex: 1; }
.pr-voll { width: 100%; box-sizing: border-box; }

/* role cards (I2) */
.pr-karten { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; margin-bottom: 16px; }
.pr-karte { display: flex; flex-direction: column; align-items: stretch; gap: 8px; text-align: left; min-width: 0;
	background: #FFF; border: 1px solid #E7E9E8; border-left: 4px solid #E7E9E8; border-radius: 10px; padding: 12px 14px;
	cursor: pointer; font-family: abel, sans-serif; color: #323232; }
.pr-karte:hover { background: #F7FBF7; border-color: #C7DFC5; }
.pr-karte.is-an { border-color: #72AE74; border-left-color: #72AE74; background: #EAF4E9; }
.pr-karte:focus-visible { outline: 2px solid #72AE74; outline-offset: 2px; }
.pr-karte-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pr-balken { display: block; height: 6px; border-radius: 3px; background: #EEF0EF; overflow: hidden; }
.pr-balken i { display: block; height: 100%; background: #72AE74; border-radius: 3px; transition: width .2s ease; }
.pr-karte-fuss { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: #6F6F6F; }
.pr-leute { display: inline-flex; align-items: center; }
.pr-ava { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border-radius: 50%;
	margin-left: -5px; border: 2px solid #FFF; background: #DCEBDC; color: #3F6E41; line-height: 1; }
.pr-ava:first-child { margin-left: 0; }
.pr-ava-1 { background: #DCEAF5; color: #1F5F87; }
.pr-ava-2 { background: #F5E6D3; color: #8A5414; }
.pr-ava-3 { background: #ECE0F2; color: #6A3F80; }
.pr-ava-mehr { background: #EEF0EF; color: #525252; }
.pr-karte-neu { flex-direction: row; align-items: center; justify-content: center; border-style: dashed; border-left-width: 1px;
	color: #6F6F6F; min-height: 92px; }
.pr-karte-neu:hover { color: #3F6E41; }

/* editor of the selected role */
.pr-panel { border: 1px solid #E7E9E8; border-radius: 10px; padding: 14px 16px 6px; margin-bottom: 16px; }
.pr-panel-kopf { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 12px; }
.pr-panel-kopf form { margin: 0; }
.pr-name-wrap { display: inline-flex; align-items: center; gap: 6px; min-width: 0; flex: 1 1 260px; }
.pr-name { color: #323232; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pr-name-eingabe { max-width: 360px; }
.pr-stift { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 15px;
	border: 0; background: transparent; color: #929292; cursor: pointer; padding: 0; }
.pr-stift:hover { background: #EAF4E9; color: #3F6E41; }
.pr-kopf-knoepfe { display: inline-flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.pr-tip-wrap { display: inline-flex; }
.pv-btn[disabled] { opacity: .5; cursor: not-allowed; }
.pv-btn[disabled], .pv-btn[disabled]:hover { background: #FFF; color: #6F6F6F; }
.pv-btn-warn[disabled], .pv-btn-warn[disabled]:hover { color: #856404; }

/* search (I8) */
.pr-werkzeug { margin-bottom: 12px; }
.pr-suche-wrap { position: relative; display: inline-flex; align-items: center; width: 100%; max-width: 320px; }
.pr-suche-wrap .pr-ic { position: absolute; left: 11px; width: 15px; height: 15px; color: #999; pointer-events: none; }
.pr-suche-wrap .pr-suche { width: 100%; padding-left: 34px; box-sizing: border-box; }
.pr-treffer-nein { display: none !important; }
.pr-nichts { color: #929292; margin: 4px 0 12px; }

/* groups folded with a switch (I8) */
.pr-gruppe { border: 1px solid #E7E9E8; border-radius: 10px; margin-bottom: 8px; overflow: hidden; }
.pr-gruppe-kopf { display: flex; align-items: center; gap: 10px; padding: 6px 12px 6px 6px; background: #F7F8F8; }
.pr-gruppe.is-offen .pr-gruppe-kopf { border-bottom: 1px solid #ebebeb; }
.pr-auf { flex: 1; min-width: 0; display: flex; align-items: center; gap: 8px; border: 0; background: transparent; cursor: pointer;
	padding: 6px; border-radius: 8px; color: #323232; font-family: abel, sans-serif; text-align: left; }
.pr-auf:hover { background: #EAF4E9; }
.pr-gruppe.is-offen .pr-auf .pr-ic-chevron { transform: rotate(0deg); }
.pr-zaehler { color: #6F6F6F; white-space: nowrap; }
.pr-schalter { position: relative; flex: none; width: 40px; height: 22px; border-radius: 11px; border: 0; padding: 0; cursor: pointer;
	background: #CFCFCF; transition: background .15s ease; }
/* The knob is its own span: microtip owns ::before/::after of the switch for the tooltip. */
.pr-knopf { position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%; background: #FFF;
	box-shadow: 0 1px 2px rgba(0, 0, 0, .25); transition: left .15s ease; }
.pr-schalter.is-an { background: #72AE74; }
.pr-schalter.is-an .pr-knopf { left: 21px; }
.pr-schalter.is-teil { background: #B9D7BA; }
.pr-schalter.is-teil .pr-knopf { left: 12px; }
.pr-schalter:hover { background: #BDBDBD; }
.pr-schalter.is-an:hover { background: #5a9a5c; }
.pr-schalter.is-teil:hover { background: #A5CBA6; }
.pr-schalter[disabled] { cursor: default; opacity: .6; }
.pr-gruppe-inhalt { padding: 6px 6px 8px; }
/* The top node is the group itself: its checkbox is driven by the switch, its row stays hidden. */
.pr-gruppe-inhalt > [data-knoten] > .pv-zeile { display: none; }
.pr-gruppe-inhalt > [data-knoten] > [data-knoten] { margin-left: 0 !important; }

/* company roles only as templates, folded at the bottom (I10) */
.pr-firmen { border: 1px solid #E7E9E8; border-radius: 10px; overflow: hidden; }
.pr-firmen-kopf { display: flex; align-items: center; gap: 8px; padding: 12px 14px; background: #F7F8F8; cursor: pointer; list-style: none; color: #323232; }
.pr-firmen-kopf::-webkit-details-marker { display: none; }
.pr-firmen[open] .pr-firmen-kopf { border-bottom: 1px solid #ebebeb; }
.pr-firmen[open] .pr-firmen-kopf .pr-ic-chevron { transform: rotate(0deg); }
.pr-firma { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding: 10px 14px; border-bottom: 1px solid #F2F4F3; }
.pr-firma:last-child { border-bottom: 0; }
.pr-firma.is-an { background: #EAF4E9; }
.pr-firma-name { color: #323232; }
.pr-link { color: #6F6F6F; text-decoration: none; }
.pr-link:hover { color: #3F6E41; text-decoration: underline; }

/* popup "New role" (I3) */
.pr-start { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 6px; }
.pr-start-wahl { display: flex; align-items: flex-start; gap: 8px; border: 1px solid #E7E9E8; border-radius: 8px; padding: 8px 10px;
	cursor: pointer; line-height: 1.3; color: #323232; }
.pr-start-wahl:hover { background: #F7FBF7; }
.pr-start-wahl:has(input:checked) { border-color: #72AE74; background: #EAF4E9; }
.pr-start-wahl input { margin-top: 3px; accent-color: #72AE74; flex: none; }

@media (max-width: 760px) {
	.pr-start { grid-template-columns: minmax(0, 1fr); }
	.pr-body { padding: 12px; }
}

/* ============================================================
   bs-perm-off — control without the right (Marc 20.10.2026):
   visible but disabled, the tooltip names the missing right.
   Set by components/permission-ui (from @perm and data-perm).
   ============================================================ */
.bs-perm-off,
.bs-perm-off:hover,
.bs-perm-off:focus {
	opacity: .45;
	filter: grayscale(1);
	cursor: not-allowed !important;
	box-shadow: none;
	text-decoration: none;
	}
.bs-perm-off img, .bs-perm-off svg { filter: grayscale(1); }
