/* CSS Document */

.mailform
{
	position: 			relative;
	min-width: 			400px;
	
}

.mailform .mailform_container
{
	position: 			relative;
	display: 			table;
	width: 				100%;
}

.mailform .mailform_container .mailform_row
{
	position: 			relative;
	display: 			table-row;
}

.mailform .mailform_container .mailform_row > div
{
	padding-top: 		5px;
	
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
	
	display: 			table-cell;
	vertical-align: 	top;
}

.mailform .mailform_container .mailform_row > div input[type="text"], .mailform .mailform_container .mailform_row > div textarea
{
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */	
	width: 					100%;
}

.mailform input[type="submit"], .mailform input[type="button"].btn_close
{
	margin-top: 			10px;
	font-size: 				80%;
}
.mailform input[type="submit"]
{
	float: 					right;
}

form[w100p] table.DataTable
{
	width: 					100%;
}
form[w100p] table.DataTable td
{
	vertical-align: 		top;
}

form[w100p] table.DataTable select, form[w100p] table.DataTable input[type="text"], form[w100p] table.DataTable textarea
{
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
	width: 					100%;
}

.stammdatenliste-print										{ display: 			 none; }

div.cell 
{
  display: table-cell;
}

div.colspan,
div.colspan+div.cell 
{
  border: 0;
}

div.colspan>div 
{
  width: 1px;
}

div.colspan>div>div 
{
  position: relative;
  width: 	95vw;
  overflow: hidden;
}

@media print 
{
    /* Hide everything in the body when printing... */
    body *:not(.printing) { display: none; }
	.printing.print_container {  }
	.printing.print_parent { top: 0px !important;  }
	textarea, input, #site
	{
		font-size: 	15px !important;
	}
	html
	{
		min-height: 		1vh !important;
	}
	body
	{
		background-color: 	rgba(0,0,0,0.00);
	}
	.option_bar
	{
		display: none;
	}
	.print_site_head
	{
		display: 			block 	!important;
	}
	.print_site_head .logo img, .print_site_head .name 
	{
		height: 			40px	!important;
	}

	.print_site_head
	{
		position: 			relative;	
		margin-left: 		30px;
	}

	.print_site_head .logo img, .print_site_head .name
	{
		height: 			20px;
	}
	.print_site_head .logo, .print_site_head .titel, .print_site_head .name
	{
		position: 				relative;
		display: 				inline-block;
		color: 					rgba(0,0,0,0.60);
		vertical-align: 		top;

	}
	.print_site_head .name
	{
		padding-left: 		5px;
		border-left: 		rgba(0,0,0,0.34) 1px solid;
		font-size: 			110%;
	}
	.print_site_head .titel
	{
		position: 			absolute;
		right: 				0px;
		font-size: 			110%;
	}
	.print_site_head .line hr
	{
		height: 			1px;
		background-color: 	rgba(0,0,0,0.34);
		border: 			0px;

	}	
	.print_hide
	{
		display: 			none !important;
	}
	.data_table_container, #main_container
	{
		overflow: 			visible;
	}
	.data_table_container > div:nth-child(2), #did_main, #main_container
	{
		position: 			relative;
		overflow: 			visible;
	}
	
	.rslt_green, .rslt_red, .rslt_yellow, .rslt_kl 
	{
		width: 				10px;
		height: 			10px;	
	}
}

.empty_text_keine:empty::after
{
	content: 		'keine';
}
.expandable_box
{
	display: 		inline-block;
}
.expandable_box .expandable_text
{
	display: 		none;
}
#expandable_tooltip
{
	position: 		fixed;
	background: 	rgba(255,255,255,1.00);
	max-width: 		300px;
	height: 		auto;
	color: 			#000000;
	z-index: 		999999;
	cursor: 		pointer;
	transform: 		scale(1);
	transition: 	transform 0.3s ease;
	transform-origin: right top;
	padding: 		5px;
	border: 		rgba(0,0,0,0.45);
	box-shadow: 	2px 2px 2px rgba(0,0,0,0.90);
	font-size: 		110%;
	font-weight: 	200;
}

#expandable_tooltip:empty
{
	transform: 		scale(0);
}

.expandable_box:hover .expandable_text
{
	/* display: 		block; */
}

.msgbox
{
	display: 		block;
	position: 		absolute;
	top: 			0px;
	left: 			0px;
	right: 			0px;
	bottom: 		0px;
	width: 			auto;
	height: 		auto;
	
	background: 	rgba(255,255,255,0.69);
	
	transform: 		scale(1);
	transition: 	transform 0.5s ease;
	transform-origin: right top;	
}

.msgbox:empty, .msgbox.scale_0
{
	transform: 		scale(0);
}


.msgbox .msgbox_container
{

	
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */	
	
	position: 		absolute;
	
	margin: 		30px;
	padding: 		10px;
	
	top: 			0px;
	left: 			0px;
	right: 			0px;
	bottom: 		0px;
	width: 			auto;
	height: 		auto;
	overflow-y: 	auto;
	
	background: 	rgba(255,255,255,1);
	
    box-shadow: 	4px 4px 10px #000000;
}

.msgbox .close_btn
{
	position: 			absolute;
	text-align: 		center;
	
	margin: 			10px;
	
	top: 				0px;
	right: 				0px;
	
	height: 			30px;
	width: 				30px;
	
	overflow: 			visible;
	
	background: 		rgba(66,66,66,1.00);
	color: 				rgba(255,255,255,1.00);
    line-height: 		1.5;
    font-size: 			20px;
}
.msgbox .close_btn:hover
{
	background-color: 	rgba(0,51,4,1.00);
	cursor: 			pointer;
}

.detail_view .expandable_box
{
	display: 			none;
}
.detail_view div.colspan>div>div
{
	width: 89vw;
}
.detail_view_show
{
	display: 			none;
}
.detail_view .detail_view_show
{
	display: 			block;
}

.kopf .edit_buttons
{
	display:  			inline-block;
}
.kopf .edit_buttons .option_bar
{
	position: 			relative  !important;
	display: 			inline-block;
}
.kopf .edit_buttons .option_bar span
{
	display: 			block;
}
.kopf .edit_buttons .option_bar .icon-trash22 /*, .kopf .edit_buttons .option_bar .btn_dynamic_print */
{
	display: 			none;
}


input.alert, input[type="text"].alert, input[type="text"].alert:focus
{
	border-width: 			2px 				!important;
	border-style: 			solid 				!important;
	border-color: 			rgba(187,0,3,1.00) 	!important;
}

li a.seperator_before
{
	margin-top: 				-1px;
	border-top: 			1px solid rgba(0,0,0,1.00);
}
li a.seperator_before:hover
{
	
}

.data_table > div > table > tbody:empty::after,
.data_table.data_table_lazy > div:empty::after
{
	content: 				'Keine Einträge gefunden';
}

@media screen 
{
	.print_only
	{
		display:  			none !important;
	}	
}
.ui-dialog-buttonset:has(div.sticky_buttons)
{
	float: 				inherit 	!important;
}
.ui-dialog-buttonset .sticky_buttons [data-ef_stickb_type]
{
	vertical-align: 	middle;
}
.ui-dialog-buttonset .sticky_buttons [data-ef_stickb_type="print"]
{
	border: 			none;
	box-shadow: 		none;
}
.ui-dialog-buttonset .sticky_buttons [data-ef_stickb_type="submit"]
{
	float: 				right;
}
.ui-dialog-buttonset .sticky_buttons [data-ef_stickb_type="print"]:hover
{
	background: 		rgba(0,0,0,0.00);	
}

fieldset
{
	border: 			none;
	margin: 			0px;
	padding: 			0px;
}
fieldset radio
{
	margin-left: 		0px;
}
fieldset label, [radiomultioptions] .label
{
	margin-right: 		10px;
	user-select: 		none;
}
[radiomultioptions] .label, label.radiolabel
{
	display:  			inline-block;
	cursor: 			pointer;
}



/* COLORPICKER */ 
.colorPicker 
{
	z-index: 					99999;
	position: 					fixed;

	display: 					grid;
	grid-template-columns: 		80px 0px;
	grid-template-rows: 		80px;

	padding: 					2px;
	background: 				var(--app_background);
	border: 					var(--app_textbox_border);
}

.colorPicker .rainbow canvas
{
	cursor: 					crosshair;

	width: 						100%;
	height: 					100%;
	/*
	height: 					80px;
	width: 						80px;
	cursor: crosshair;
	background: conic-gradient(
		from 80deg,
		red,
		orange,
		yellow,
		green,
		blue,
		indigo,
		violet,
		red
	);
	*/
}

.colorPicker .brightnessSlider 
{
	background: linear-gradient(to bottom, #000, #fff);
	margin-left: 10px;
}
/* ************************** */

/* ******* scrollable table ********* */

.scrollable_table_container 
{
    position:           absolute;
    top:                0px;
    bottom:             0px;
    left:               0px;
    right:              0px;
    width:              auto;
    height:             auto;
	overflow-y: 		auto;
	margin: 			0 auto;
}

.scrollable_table_container > table 
{
    width: 				100%;
    border-collapse: 	collapse;
}

.scrollable_table_container > table > thead 
{
    position: 			sticky;
    top: 				0;
	transform: 			translateY(-1px);
    background-color: 	#f1f1f1;
}

.scrollable_table_container > table > thead > tr > th, 
.scrollable_table_container > table > tbody > tr > td 
{
    border: 			1px solid #dddddd;
    text-align: 		left;
    padding: 			8px;
}

.scrollable_table_container > table > tbody > tr:nth-child(even) 
{
    background: 		#f9f9f9;
}

.scrollable_table_container > table > tbody > tr:nth-child(evodden) 
{
	background: 		#b8b8b8;
}

@media print
{
	.scrollable_table_container > table > thead 
	{
		transform: 			translateY(0px);
	}
}

/* ********************************** */

/* ******* custom datepicker ********* */
.custom_datepicker_container
{
	position: 			absolute;
	z-index: 			1000;
	display: 			none;

	background: rgba(0, 0, 0, 0.68);
	border-radius: 16px;
	box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
	border: 1px solid rgba(199, 199, 199, 0.765);
}

.custom_datepicker_container table 
{
	border-collapse: 	collapse;
	width:				100%;
}

.custom_datepicker_container th, .custom_datepicker_container td 
{
	text-align: 		center;
	padding: 			8px;
	cursor: 			pointer;
}

.custom_datepicker_container th 
{
}

.custom_datepicker_container td 
{
}

.custom_datepicker_container td:hover 
{
	background-color: 	#3d3d3d;
}

.custom_datepicker_container .custom_datepicker_header 
{
	display: 			flex;
	justify-content: 	space-between;
	align-items: 		center;
	padding: 			10px;
	border-bottom: 		1px solid #ddd;
}

.custom_datepicker_container .custom_datepicker_header select, 
.custom_datepicker_container .custom_datepicker_header input,
.custom_datepicker_container .custom_datepicker_header button 
{
	font-size: 			14px;
	padding: 			5px;
	margin-right: 		5px;
	color: 				#ddd !important;
	background: 		transparent !important;
}

.custom_datepicker_container .custom_datepicker_header select, 
.custom_datepicker_container .custom_datepicker_header input
{
	border: 			1px solid rgba(199, 199, 199, 0.265) !important;
}

.custom_datepicker_container .custom_datepicker_header button 
{
	background-color: 	#2f2f2f;
	color: 				white;
	border: 			none;
	cursor: 			pointer;
	border-radius: 		4px;
}

.custom_datepicker_container .custom_datepicker_header button:hover 
{
	background-color: 	#0056b3 !important;
}

/* ********************************** */