/* master.css */

/* general styles */
:root {
	--tk-green: #7EA13E;
	--tk-dark_green: #4E710E;
	--tk-grey: #214F5A;
	--tk-a-hover: #567c11;
	--tk-menu-hover: #99CC33;
	--tk-silver: silver;
	--tk-mydal-opaque: rgba( 0, 0, 0, 0.5 ); 
	--tk-red: crimson;
	--tk-check_2: crimson;
	--tk-check_1: #24919D; /* lumi, 09.09.2022 */
	--tk-inactive: #6d8c93;
	--tk-input-border: #8f8f9d;
	--tk-disabled-grey: grey;
	--tk-alyrttype_message: var(--tk-green);
	--tk-alyrttype_warning: orange;
	--tk-alyrttype_error: crimson;
	--tk-todo_onhold: #4a2e24;
	--tk-todo_badge: rgba( 255, 165, 0, 0.9 );
	--tk-todo_badge_due: rgba( 255, 255, 0, 0.9 );
	/* --tk-todo_badge_personal: rgba( 255, 110, 185, 0.9 ); */
	/* --tk-todo_badge_personal: rgba( 251, 170, 245, 0.9 ); */
	--tk-todo_badge_personal: rgba( 251, 212, 245, 0.9 );
	--ledgibility-background: #E0E0E0;
}

.italic {
	font-style: italic;
}

body {
	/* override bootstrap value */
	line-height: unset;
	background-color: unset;
	margin: 5px;
}

label, .label {
	/* override bootstrap value */
	font-weight: unset;
	margin: unset;
	max-width: unset;
	display: unset;
	padding: unset;
	font-size: unset;
	font-weight: unset;
	line-height: unset;
	color: unset;
	text-align: unset;
	white-space: unset;
	vertical-align: unset;
	border-radius: unset;
}

body, div, span, li, table, thead, tbody, tr, td, p, span, textarea, input, label, select, option, option:checked, option:disabled {
	font-family: Open Sans, sans-serif;
	text-align: left;
	font-size: 11pt;
	color: var(--tk-grey);
	word-wrap: break-word;
}

/* rwh 250731 */
option:disabled {
	color: var(--tk-silver);
}

body {
	height: 100%;
}

.check_2, .check_2 > * > * {
	color: var(--tk-check_2) !important;
}
		
.check_1, .check_1 > * > * {
	color: var(--tk-check_1) !important;
}
		
.active_0, .active_0 > * > * {
	color: var(--tk-inactive) !important;
}

a {
	color: var(--tk-grey); /* lum lm240225: für Isabella sonst schwer lesbar. Alter wert: color: var(--tk-green); */
	text-decoration: none;
}

a:hover, a:focus {
	color: var(--tk-grey);
	text-decoration: none;
	cursor: pointer;
}

div#body {
	max-width: 100%;
	text-align: left;
	border: 0px solid black;
	border-radius: 3px;
	padding: 5px 5px 50px 5px;
	margin: 5px 0px 0px 0px;
	background-color: var(--tk-silver);
}

div.overlay {
    /* position: absolute; */
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;
    z-index: 1000;
    /* background: "url(/img/loading.gif) no-repeat 50% 50%" */
    background-color: var(--tk-mydal-opaque);
}


div#alyrt_overlay, div#confyrm_overlay, div#prympt_overlay  {
	display: flex;
	justify-content: center;
	align-items: center;
	padding-bottom: 200px;
}

div#alyrt, div#confyrm, div#prympt {
	background-color: white;
	border: 3px solid var(--tk-green);
	border-radius: 3px;
}

#alyrt:focus, #confyrm:focus, #prympt:focus {
	outline: none;
}

div#alyrt_header, div#confyrm_header, div#prympt_header {
	background-color: var(--tk-green);
	color: white;
	padding: 0px 5px 2px 5px;
}

div#alyrt_header.alyrttype_1 { /* Hinweis*/
	background-color: var(--tk-alyrttype_message) !important;
}

div#alyrt_header.alyrttype_2 { /* Warnung */
	background-color: var(--tk-alyrttype_warning) !important;
}

div#alyrt_header.alyrttype_3 { /* Fehler */
	background-color: var(--tk-alyrttype_error) !important;
}

div#alyrt_message, div#confyrm_message, div#prympt_message {
	background-color: white;
	padding: 20px;
}

div#alyrt_message:before {
	font-size: 2.5em;
	font-weight: bold;
	padding-right: 10px;
	padding-bottom: 5px;
	vertical-align: middle;
}

div#alyrt_message.alyrttype_1:before {
	color: var(--tk-alyrttype_message);
	content: "\2713";
}

div#alyrt_message.alyrttype_2:before {
	color: var(--tk-alyrttype_warning);
	content: "\26A0";
}

div#alyrt_message.alyrttype_3:before {
	color: var(--tk-alyrttype_error);
	content: "\2718";
}

div#prympt_message {
	text-align: center;
}

div#prympt_message input {
	margin-top: 15px;
}

div#alyrt_footer, div#confyrm_footer, div#prympt_footer {
	background-color: white;
	max-width: 100%;
	display: flex;
	justify-content: center;
	padding: 3px;
	margin: 10px 0px 10px 0px;
}

div#alyrt_footer button, div#confyrm_footer button, div#prympt_footer button {
	width: 150px;
	height: 30px;
	text-align: center;
	background-color: var(--tk-silver);
	border: none;
	border-radius: 3px;
	padding: 4px 10px 3px 10px;
	margin: 0px 10px 0px 10px;
	color: var(--tk-green);
	cursor: pointer;
	font-weight: bold;
}

div#alyrt_footer button i, div#confyrm_footer button i, div#prympt_footer button i {
	font-size: 19px;
	vertical-align: -3px;
	margin-right: 10px;
}

//lm 240730: RUAL

// lm240730: RUAL
.assoc_container {
    display: none;
}
.assoc_container.in {
    display: block;
}
// lm240730: RUAL END

.rual_rechts {
	float: right;
	text-align: right;
    white-space: nowrap; /* Prevents line break */
 	
}
.rual {
	display: flex;
	justify-content: space-between;
	align-items: center; /* Ensures vertical alignment */
	width: 100%;
	margin-right: 10px; /* Adds a few pixels of space from the right */
}
.rual-text {
	flex: 1;
}

.status {
	padding: 3px;
	border-radius: 2px;
	//background-color: #EEEEEE; /* Adjust background color as needed for contrast */
}
.status-1 {
	/* No extra color */
	color: white;
}
.status-2 {
	//color: white;
	// background-color: #000; /* Adjust background color as needed for contrast */
}
.status-3 {
	color: red;
}
.status-4 {
	color: #5E811E; /* Assuming TK_GREEN is a shade of green */
}
.status-5 {
	text-decoration: line-through;
}
.rual-text-5 {
	text-decoration: line-through;
}

a.assoc-toggle:hover {
	background-color: Gainsboro;
}

/* lm 240730: RUAL - END */

#rual table {
	border-collapse: collapse; /* Ensures no extra space between cells */
	width: 100%;
}
#rual table td, 
#rual table th {
	padding: 5px; /* Adds 5px padding to all table cells */
	text-align: left;
}

.rechts {
    text-align: right !important;
}

iframe.mydal {
    position: fixed;
    /* width: 90%;
    height: 90%;
    right: 10px;
    bottom: 10px; */
    width: 90vw;
    height: 90vh;
	max-height: 90vh;
    right: 5vw;
    top: 4vh;
    z-index: 2000;
	border: 5px solid var(--tk-green);
	background-color: white;
}

div.mydal_buttons {
	max-width: 100%;
	border: 0px solid red;
	display: flex;
	justify-content: right;
	border-radius: 3px;
	padding: 3px;
	margin: 10px 0px 10px 0px;
	background-color: var(--tk-green);
}

div.mydal_buttons button {
	width: 150px;
	height: 30px;
	text-align: center;
	background-color: var(--tk-silver);
	border: none;
	border-radius: 3px;
	padding: 3px 10px 3px 10px;
	color: var(--tk-green);
	cursor: pointer;
	/* rwh 230914 margin-left: 210px; */
	margin-left: 20px;
}

div.mydal_buttons .save, div.mydal_buttons .new {
	margin-left: 20px;
}

div.mydal_buttons .send, div.mydal_buttons .simulate, div.mydal_buttons .wide {
	width: 220px;
	margin-left: 20px;
}

div.mydal_buttons .send, div.mydal_buttons .simulate {
	width: 220px;
	margin-left: 20px;
}

div.mydal_buttons button i {
	font-size: 20px;
	vertical-align: -3px;
}

div.mydal_buttons button:hover {
	color: var(--tk-red);
}

div.mydal_buttons input.button {
	width: 150px;
	text-align: center;
	background-color: var(--tk-silver);
	border: none;
	border-radius: 3px;
	padding: 3px 10px 3px 10px;
	color: white;
	cursor: pointer;
	margin-top: 10px;
	margin-left: 210px;
}

/* glyph size */
i.fi {
	font-size: 20px;
}

a.disabled {
	color: var(--tk-disabled-grey);	
}

label.required {
	color: var(--tk-red);
}
.requiredbutempty {
	border: 2px solid var(--tk-red);
}
label.requiredbutempty {
	border: 0px;
	color: var(--tk-red);
	font-weight: bold;
}

input, select, textarea {
	margin-bottom: 7px;
}

div.spacer_above {
	margin-top: 10px;
	padding-top: 8px;
	border-top: 1px dotted grey;
}

td input {
	margin-bottom: 0px;
}

label { 
	display: inline-block;
	position: relative;
	top:0.2em;
	margin-right: 10px; 
	float: left;
	align: right;
	width: 140px;
	text-align: right;
}

label.radio { 
	display: inline-block;
	position: relative;
	top: unset;
	margin-left: 10px; 
	margin-right: 30px; 
	float: none;
	align: left;
	width: unset;
	text-align: left;
}

label.checkbox { 
	display: inline-block;
	position: relative;
	top: unset;
	margin-left: 10px; 
	margin-right: 30px; 
	float: none;
	align: left;
	width: unset;
	text-align: left;
}

.radio-container {
	display: flex;
    align-items: center;
    justify-content: left;
    padding-top: 5px;
    padding-bottom: 5px;
}

.checkbox-container {
    padding-top: 3px;
    padding-bottom: 10px;
    display: inline-block;
    margin-right: 20px;
}

.checkbox-container-re {
    padding-top: 3px;
    padding-bottom: 10px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 0.5rem;
    flex: 1;
}


.flex {
    display: flex;
    flex-wrap: wrap;
}

.rightdiv, #downpayment_amount-container, #storno_amount-container {
    display: inline-block;
    padding-left: 0px;
}


.form-row {
    margin-bottom: 0px;
}

.form-row.horizontal-inputs {
    display: flex;
    gap: 1rem;
    align-items: center;
    margin-bottom: 0.5rem;
    flex-wrap: wrap; /* damit es auf kleineren Displays umbricht */
    margin-bottom: 0px;
}


#storno-checkbox-container {
	vertical-align: top;
}

#storno_text{
	width: 210px;
	height: 100px;
}

#downpayment_amount-container, #storno_amount-container input[type="text"] {
    width: 6rem;
}


#serial_number {
    text-align: right;
}

#downpayment_amount, #storno_amount {
    width: 210px !important;
    text-align: right;
}

.nobr {
    display: inline-block;
}

.checkbox-container + .checkbox-container {
    display: block;
}

input[type="checkbox"] {
    margin: 0;
	
}


h1 {
    font-family: 'Yanone Kaffeesatz', Verdana, Helvetica, Arial, sans-serif;
    /* text-align: left; */
    margin-top: 10px;
    margin-bottom: 13px;
    color: var(--tk-green);
    font-size: 29pt;
    text-shadow: none;
}

h2 {
    font-family: 'Yanone Kaffeesatz', Verdana, Helvetica, Arial, sans-serif;
    text-align: right;
    margin-top: 0px;
    margin-bottom: 13px;
	margin-right: 10px;
    color: var(--tk-green);
    font-size: 20pt;
    text-shadow: none;
}

/* rwh 251022 */
select.autowidth {
	width: fit-content;
}

/* input.verynarrow, select.verynarrow, span.verynarrow { */
input.verynarrow, select.verynarrow, span.verynarrow, td.verynarrow {
	width: 70px;
	display: inline-block;
}

div.bootstrap-select.verynarrow {
	width: 70px !important;
	display: inline-block !important;
}

input.date, span.date {
	width: 80px;  /* lumi: 07.09.2022 */
	display: inline-block;
}

/* input.maxnarrow, select.maxnarrow, span.maxnarrow { */
input.maxnarrow, select.maxnarrow, span.maxnarrow, td.maxnarrow {
	width: 40px;
	display: inline-block;
}

div.bootstrap-select.maxnarrow {
	width: 40px !important;
	display: inline-block !important;
}

/* input.narrow, select.narrow, span.narrow { */
input.narrow, select.narrow, span.narrow, td.narrow {
	width: 140px; /* lumi: 07.09.2022 */
	display: inline-block;
}

div.bootstrap-select.narrow {
	width: 140px !important;
	display: inline-block !important;
}

/* input.mid, select.mid, span.mid, textarea.mid { */
input.mid, select.mid, span.mid, textarea.mid, td.mid {
	width: 180px;    /* lumi: 07.09.2022 */
	display: inline-block;
}

/* input.wide, select.wide, span.wide, textarea.wide { */
input.wide, select.wide, span.wide, textarea.wide, td.wide {
	width: 350px; 
	display: inline-block;
}

/* input.extrawide, select.extrawide, span.extrawide, textarea.extrawide { */
input.extrawide, select.extrawide, span.extrawide, textarea.extrawide, td.extrawide {
	width: 600px;
	display: inline-block;
}

textarea.autoheight {
	height: 100px;
}

textarea#prefix, textarea#suffix {
	height: 150px;
}

textarea#changed_greetings{
	height: 70px;
}

input[type="radio"], input[type="checkbox"] {
	width: unset;
}

input.button[type="submit"] {
	width: 150px;
	text-align: center;
	background-color: var(--tk-green);
	border: none;
	border-radius: 3px;
	padding: 3px 10px 3px 10px;
	color: white;
	cursor: pointer;
	margin-top: 10px;
	margin-left: 210px;
}

input.wide[type="submit"] {
	width: 350px;
}

input.mid[type="submit"] {
	width: 250px;
}

a#forgotpwd {
	margin-left: 210px;
}

/* template 00000_nomatch.htt */
div.div_nomatch {
	text-align: center;
	border-radius: 3px;
	padding: 20px 25% 50px 5px;
}

/* template header.htt */
div#logo {
	display: flex;
	justify-content: left;
}

div#logo a {
    background-image: url("/images/teamkiste.png");
	height: 62px;
	width: 180px;
	background-size: contain;
	background-repeat: no-repeat;
	border-radius: 2px;
	margin-right: 4px;
}

div#header {
	max-width: 100%;
	border: 0px solid red;
	text-align: left;
	display: flex;
	justify-content: left;
	border-radius: 3px;
	padding: 3px;
	margin: 5px 0px 0px 0px;
	background-color: var(--tk-green);
}

.environment {
	background-color: var(--tk-green);
}


div#menu {
	border: 0px solid green;
	text-align: left;
	position: relative;
}

div.menu1 {
	border: 0px solid purple;
	text-align: left;
	display: flex;
	justify-content: left;
}

div.menuitem1, div.menuitem2, div.usermenuitem {
	padding: 2px 10px 3px 10px;
	margin: 4px 5px 2px 5px;
	border-radius: 3px;
	color: white;
}

div.menuitem1.yplonly {
	display: none;
}

div.menuitem2 {
	margin: 2px 5px 4px 5px;
}

div.menuitem1:hover, div.menuitem2:hover, div.usermenuitem:hover {
	background-color: var(--tk-menu-hover);
	cursor: pointer;
}

div.menuitem1[state="active"], div.menuitem2[state="active"] {
	background-color: var(--tk-menu-hover);
	color: white;
	font-weight: bold;
}

div.menu2 {
	border: 0px solid black;
	text-align: left;
	display: flex;
	justify-content: left;
	margin-right: 250px;
	flex-wrap: wrap;
}

div#user {
	border: 0px solid blue;
	max-width: 100%;
	position: absolute;  
	right: 10px;  
}

div.usermenu, div.usermenuitem {
	text-align: right;
	font-size: 10pt;
}

div#usermenu div.usermenuitem {
	display: inline;
}

div.usermenuitem:hover {
}

div.login {
	text-align: left;
	display: flex;
	justify-content: center;
	border-radius: 3px;
	padding: 20px 25% 50px 5px;
}

div.usererror, div.error {
	text-align: left;
	display: flex;
	justify-content: center;
	padding: 20px 15% 0px 5px;
	color: var(--tk-red);
	margin: -30px 0px 5px 0px;
}
div.usererror:empty, div.error:empty {
	display: none;
	visibility: hidden;
}

div.error {
	display: fixed; 
	justify-content: left;
	margin: -15px 0px 0px 0px;	
}

/* template 00026_fieldadmin.htt */
table.filter td {
	padding-right: 40px;
}

table.filter label.select {
	display: block;
	width: unset;
}

label.falabel {
	top: unset;
	margin-right: unset; 
	text-align: left;
	align-self: flex-end;
	text-align: left;
	margin-left: 20px;
	vertical-align: bottom;
	font-weight: bold;
	width: unset;
	-webkit-transform: rotate(310deg);
	-webkit-transform-origin: left bottom;
	word-wrap: nowrap;
	white-space: nowrap;
	overflow: visible;

/* 	-moz-transform: rotate(-60deg) translateX(100%);
	-ms-transform: rotate(-60deg) translateX(100%);
	-o-transform: rotate(-60deg) translateX(100%);
	transform: rotate(-60deg) translateX(100%);
	transform-origin: 100% 0%; */
}

div.falabel.id, div.falabel.max_length, div.falabel.sortorder, div.falabel.fieldgroup {
	width: 30px; background-color: red;
} 

div.falabel.max_length {
	width: 40px; background-color: red;
} 

div.falabel.tablename, div.falabel.fieldname, div.falabel.viewcontext, div.falabel.check_pattern, div.falabel.css_class, div.falabel.label {
	width: 100px; background-color: red;
} 

div.falabel.fieldtype, div.falabel.viewcontext, div.falabel.extra {
	width: 80px; background-color: red;
} 
div.falabel.required, div.falabel.editable, div.falabel.directedit, div.falabel.searchable, div.falabel.column_default, div.falabel.multiline, div.falabel.todo {
	width: 50px; background-color: red;
} 

div.falabel.lookup_table {
	width: 150px; background-color: red;
} 

div.falabel.lookup_key, div.falabel.lookup_value, div.falabel.input_type {
	width: 80px; background-color: red;
} 

div.falabel.comment {
	width: 120px; background-color: red;
} 

div.falabel.action {
	width: 70px; /* background-color: red; */
} 

table.fieldlist {
	border: 1px solid grey;
	border-radius: 2px;
	position: relative;
	width: 100%;
	margin-right: 1%;
}

table.fieldlist td, table.fieldlist th {
	padding: 2px;
}

table.fieldlist thead tr {
	height: 120px;
}
table.fieldlist thead th {
	border: 1px solid grey;
	border-radius: 2px;
	background-color: var(--tk-green);
	vertical-align: bottom;
}

select[multiple] {
	height: 65px;
}

/* lm240429: style-fix */
table.Modulinfo thead tr:first-child th{
	background-color: var(--tk-green);
}

table.fieldlist tbody tr:nth-child(even) td {
	background-color: grey;
}

table.fieldlist tbody td {
	border: 1px solid var(--tk-green);
	vertical-align: top;
}

table.fieldlist tbody tr.moving {
	opacity: 50%;
}

table.fieldlist tbody td i.fi-br-apps-sort {
	cursor: n-resize;
}

table.fieldlist input.fits, table.fieldlist select.fits {
	width: 100%;
}

select.yesno[data-selectedvalue='1'] {
	background-color: var(--tk-red);
}

/* template 00015_metadata.htt */
ul.alphalist {
	width: 500px;
	display: flex;
	list-style: none;
	margin-bottom: 15px;
	flex-direction: row;
	justify-content: space-between; 
	list-style: none;
	padding: 0;
	white-space: nowrap;
}

ul.alphalist li {
	cursor: default;
}

ul.alphalist li.clickable {
	color: var(--tk-green);
	cursor: pointer;
}

ul.alphalist li.clickable:hover {
	color: var(--tk-a-hover);
}

ul.pagination {
/*	width: 500px;
	display: flex;
	list-style: none;
	margin-bottom: 15px;
	flex-direction: row;
	justify-content: space-between; */
	list-style: none;
	margin: 0px;
	white-space: nowrap;
}

ul.pagination li {
	cursor: default;
	padding: 0px 8px;
	border-radius: 0px;
	border-right: 0px solid var(--tk-grey);
	vertical-align: top;
}

ul.pagination li:last-child {
	border-right: 0px;
}

ul.pagination li.clickable {
	color: var(--tk-green);
	cursor: pointer;
}

ul.pagination li.clickable:hover {
	color: var(--tk-a-hover);
}

table.metadata_list {
	border: 1px solid grey;
	border-radius: 2px;
	position: relative;
	/* width: 100%; */
	margin-right: 1%;
}

table.metadata_list tbody tr:nth-child(even) td {
	background-color: grey;
}

table.metadata_list tbody td {
	vertical-align: top;
}

table.metadata_list td, table.metadata_list th {
	padding: 2px;
	min-width: 100px;
}

table.metadata_list thead tr {
	height: 100px;
}
table.metadata_list thead th {
	border: 1px solid grey;
	border-radius: 2px;
	background-color: var(--tk-green);
	vertical-align: bottom;
}

/* template 00016_coredata.htt */

table.coredata_list {
	border: 1px solid grey;
	border-radius: 2px;
	position: relative;
	/* width: 100%; */
	margin-right: 1%;
}

table.coredata_list tbody tr:nth-child(even) td {
	background-color: Gainsboro;
}

table.coredata_list tbody td {
	vertical-align: top;
}

/* // rwh 240919 limit rows in coredata list to three lines */
table.coredata_list tbody td span {
	display: -webkit-box;
	-webkit-line-clamp: 3; /* number of lines to show */
	line-clamp: 3; 
	-webkit-box-orient: vertical;
	overflow: hidden;
}
/* // rwh 240919 */

table.coredata_list td, table.coredata_list th {
	padding: 2px;
	min-width: 92px;
}

table.coredata_list thead tr {
	height: 100px;
}
table.coredata_list thead th {
	border: 1px solid grey;
	border-radius: 2px;
	background-color: var(--tk-green);
	vertical-align: bottom;
}
table.coredata_list thead th.orderable:hover {
	background-color: var(--tk-a-hover);
}
table.coredata_list thead th.orderable div, table.coredata_list td.filter div:not(.dropdown-menu), table.coredata_list thead th.action div {
	display: flex;
	justify-content: space-between;
}
button.dropdown-toggle {
	padding: 1px 30px 1px 5px;
	margin-top: 0px;
	border-radius: 2px;
	border-color: var(--tk-input-border);
	height: 26px;
}
table.coredata_list thead th.orderable div.ordericon {
	margin-right: -50px;
	transform: translateX(-55px);
	text-align: right;
}
table.coredata_list thead th.orderable div.ordericon i.fi {
	display: none;
}
table.coredata_list thead th.orderable.ASC div.ordericon i.fi, table.coredata_list thead th.orderable.DESC div.ordericon i.fi {
	display: unset;
}
table.coredata_list tfoot tr {
	border-top: 1px solid grey;
}
table.coredata_list td.pagination {
	display: table-cell;
	text-align: center;
	padding: 8px;
}
table.coredata_list td.filter {
	border: 1px solid grey;
	border-radius: 2px;
	background-color: var(--tk-green);
}

a.filter, a.ordering {
	color: var(--tk-grey);
	text-decoration: none;
	vertical-align: -3px;
}

a.filter :hover, a.filter :focus, a.ordering :hover, a.ordering :focus {
	color: var(--tk-a-hover);
	text-decoration: none;
	cursor: pointer;
}

a.white {
}

a.white :hover, a.white :focus {
	color: var(--tk-a-hover);
	text-decoration: none;
	cursor: pointer;
}

/* template 00040_details_company.htt */

div.detail {
	border: 0px solid red;
	display: flex;
	justify-content: left;
}

div.coredata {
	padding: 30px 20px 10px 20px;
	border: 1px groove grey;
}

div.coredata div.field_container {
	display: flex; 
}

div.coredata div.field_container label {
	max-width: 140px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

div.coredata div.field_container div {
	white-space: nowrap;
}

.field_container .fieldgroup1 {
	/* border: 1px solid red; */
	padding-right: 15px;
	min-width:420px; /* lumi, 23.06.2022 */
}
.field_container .fieldgroup2 {
	/* border: 1px solid green; */
	padding-right: 15px;
	min-width:420px; /* lumi, 23.06.2022 */
}

/* lumi, 23.06.2022 */
.field_container .fieldgroup3 {
	min-width:420px;
}
/* lumi, 23.06.2022 end */

div.assocs {
	margin-left: 20px;
	padding: 30px 20px 10px 20px;
	border: 1px groove grey;
}

div.assoc, div.checks {
	border: 1px solid grey;
	padding: 30px 20px 20px 20px;
	margin-bottom: 30px !important;
	border-radius: 0px !important;
	background-color: unset !important;
}

div.assocs span.label i.fi, div.assoc span.label i.fi, div.checks span.label i.fi, div.coredata span.label i.fi {
	font-size: 10px;
}

div.assoc a.collapsed span {
	/* color: red; */
}

div.assoc span.label a i.fi-br-angle-down, div.assoc span.label a i.fi-br-angle-up {
	margin-left: 15px;
	font-size: 11px;
	vertical-align: middle;
}

div.assoc:has(.in) span a i.fi-br-angle-down {
	display: none;
}

div.assoc:not(:has(.in)) span a i.fi-br-angle-up {
	display: none;
}

div.assoc span select.assoc_filter {
	font-size: 12px;
	margin-left: 20px;
	max-width: 200px;
}

div.assoc span select.assoc_filter option {
	font-size: 12px;
}

div.assoc div.assoc_container {
	max-height: 300px;
	overflow: auto;
	/* rwg251009 doesn't work according to lumi scrollbar-gutter: stable; */
	padding-right: 7px;
}

div.assoc_line, div.check_line {
	border: 0px solid red;
	padding: 1px 5px 1px 5px;
	display: flex;
	justify-content: space-between;
}

div.assoc {
	min-width: 300px;
}

div.assoc div.assoc_line:hover, div.check_line:hover {
	background-color: Gainsboro;
}

div.assoc_content, div.check_content {
	border: 0px solid red;
	padding-right: 10px;
}

div.assoc_control {
	border: 0px solid red;
	white-space: nowrap;
}

div.assoc_control i.fi, div.assoc_controls i.fi {
	font-size: 15px;
}

div.assoc_controls {
	border: 0px solid red;
	text-align: right;
	padding: 1px 5px 1px 5px;
}

div.coredata span.label, div.assocs span.label {
	border: 0px solid red;
	margin-left: 30px;
	margin-top: -42px;
	margin-bottom: 20px;
	padding-left: 10px;
	padding-right: 10px;
	background-color: var(--tk-silver);
	display: block;
	width: fit-content;
	/* justify-content: left; */
}

div.cost_line {
	border: 0px solid red;
	padding: 1px 5px 1px 5px;
	display: flex;
	justify-content: space-between;
}

div.cost_content {
	border: 0px solid red;
	padding-right: 10px;
}

div.cost_control {
	border: 0px solid red;
	white-space: nowrap;
}

div.cost_control i.fi, div.cost_controls i.fi {
	font-size: 15px;
}

div.cost_controls {
	border: 0px solid red;
	text-align: right;
	padding: 1px 5px 1px 5px;
}

/* rwh 250926 this interferes with "manual direct edit" css in assoc containers (.de_manual_input), so changed it to div.coredata
div.detail input, div.detail select, div.detail textarea {
	width: 250px;
}
*/

div.coredata input, div.coredata select, div.coredata textarea {
	width: 250px;
}


/* rwh 23041x link icons in inputs for urls, tel, email to open the link */
i.input-icon {
	font-size: 16px;
	margin-left: -26px;
	border: 0px solid red;
	padding: 4px 5px 0px 5px;
	position: absolute;
}

i.input-icon.fi-br-coredata {
	margin-left: 0px;
}

i.input-icon:hover {
	cursor: pointer;
}

/* rwh 241007 input[fieldtype=tel], input[fieldtype=email], input[fieldtype=url] { */
input[fieldtype=tel], input[fieldtype=email], input[fieldtype=url], input[fieldtype=filename] {
	padding-right: 25px;
}

/* rwh 241007 .fi-br-tel:before, .fi-br-url:before, .fi-br-email:before { */
.fi-br-tel:before, .fi-br-url:before, .fi-br-email:before, .fi-br-filename:before, .fi-br-coredata:before {
	content: "\f1f7";
} 
/* rwh 230412ff end */

i.fi-br-directedit {
	font-size: 12px;
	margin-top: 2px;
	margin-left: -6px;
}

i.fi-br-directedit:before {
	padding: 4px;
	content: "\f23f" !important;
}

.de_manual {
	cursor: url(/images/icons/pointer-pencil1.png) 0 16, auto;
}

#de_manual.de_manual_input {
	color: var(--tk-grey);
	position: relative;
	width: auto;
	z-index: 3000;
}

textarea.ta_high {
	height: 206px;	
}

div.detail input[type=number], div.detail input[fieldtype=integer], div.detail input[fieldtype=float], div.detail input[fieldtype=currency] {
	text-align: right;
}

input[type=text] {
  text-align:left;
}

div.detail input[type="radio"], div.detail input[type="checkbox"] {
	width: 15px; 
	margin-top: 6px;
	vertical-align: top;
}

div.detail label.radio, div.detail label.checkbox {
	display: inline-block;
	position: relative;
	top: unset;
	margin: 1px 10px 6px 5px;
	padding: 1px 20px 1px 5px;
	float: none;
	align: left;
	width: unset;
	text-align: left;
}

span#controls2 {
	margin-left: 20px;
}

div#rb_recipients, #attachments {
	margin-top: 40px;
}

/* lm231222:  do to new div to_documents, we need a spacer */
div#to_persons, div#to_companies, div#to_roles {
	margin-bottom: 40px;
}

/* template 00060_transactions.htt */
table.transactions tr.active_0 td {
	background-color: tomato !important;
}

table.transactions tr.active_1 td {
	background-color: lightgreen !important;
}

table.transactions tr.missing *, span.doublette {
	color: red !important;
	font-weight: bold;
}

table.transactions span.counter {
	font-weight: bold;
	margin-right: 60px;
}

div.tt_cond {
	display: flex;
}

div.tt_cond select {
	
}

/* rwh 241211 widths for generated inputs in todotemplates details */
input#start_date_0_amount, input#due_date_0_amount {
	width: 30px;
	margin-right: 3px;
}

select#start_date_0_dir, select#due_date_0_dir {
	width: 60px;	
	margin-left: 3px;
	margin-right: 3px;
}

select#start_date_0_date, select#due_date_0_date {
	width: 118px;
}

/* todo badges */
.badge {
	height: 28px;
	width: 28px;
	line-height: 27px;
	padding: 0px;
	border-radius: 50%;
	font-size: 10pt;
	text-align: center;
}

.badge:empty {
	display: hidden;
}

.todos {
	background: var(--tk-todo_badge);
	color: var(--tk-dark_green);
	right: -2px;
	/* position: absolute; */
	position: relative;
	top: -12px;
	z-index: 10;
}

.todos_new, .todos_due {
	background: var(--tk-todo_badge_due);
	color: var(--tk-grey);
	right: -8px;
	/* position: absolute; */
	position: relative;
	top: -12px;
	z-index: 20;
}

.todos_personal {
	background: var(--tk-todo_badge_personal);
	color: var(--tk-grey);
	right: -16px;
	/* position: absolute; */
	position: relative;
	top: -12px;
	z-index: 30;
}

#drop-zone {
	width: 100%;
	padding: 50px;
	border: 2px dashed #999;
	text-align: center;
	font-family: sans-serif;
	cursor: pointer;
	margin-top: 10px;
	margin-bottom: 10px;
	
}
#drop-zone.highlight {
	border-color: #007bff;
	background-color: #f0f8ff;
}

/* rwh 250505 umstellen von 6 auf 12 trainer */
div.falabel.trainer {
	/* min-width: 460px;
	max-width: 460px; */
}

td.assoc_trainer {
	min-width: 460px !important;
	max-width: 460px;
	display: flex;
	column-gap: 10px;
	flex-wrap: wrap;
}

td.assoc_trainer select {
	flex-basis: 30%;
	width: 145px;
}

p.maintenance_window_message {
	color: red;
	font-weight: bold;
	text-align: center;
	padding-bottom: 20px;
}

.todo_status_1 :not(option) { /* pending */
	color: var(--tk-grey);
}

.todo_status_2 :not(option) { /* in progress */
	color: var(--tk-check_1);
}

.todo_status_3 :not(option) { /* on hold */
	color: var(--tk-todo_onhold);
}

.todo_status_4 :not(option) { /* done */
	color: var(--tk-green);
}

.todo_status_5 :not(option) { /* canceled */
	color: var(--tk-disabled-grey);
}

.hidden-label {
    display: none !important;
}


div.assoc_control a#btn_restore.todos_editable_1, div.assoc_control a#btn_restore.todos_editable_2, div.assoc_control a#btn_restore.todos_editable_3 {
	visibility: hidden;
	display: none;
}

div.assoc_control a:is([id=btn_done],[id=btn_cancel]).todos_editable_4, div.assoc_control a:is([id=btn_done],[id=btn_cancel]).todos_editable_5 {
	visibility: hidden;
	display: none;
}

div#assoc_todos_for_projects i.fi-br-dot, 
div#assoc_todos_for_persons i.fi-br-dot, 
div#assoc_todos_for_companies i.fi-br-dot {
	font-size: 1em;
	vertical-align: middle;
	margin-right: 6px;
}

div#assoc_todos_for_projects div.todo_status_1 span.due_1, div#assoc_todos_for_projects div.todo_status_2 span.due_1, div#assoc_todos_for_projects div.todo_status_3 span.due_1,
div#assoc_todos_for_persons div.todo_status_1 span.due_1, div#assoc_todos_for_persons div.todo_status_2 span.due_1, div#assoc_todos_for_persons div.todo_status_3 span.due_1,
div#assoc_todos_for_companies div.todo_status_1 span.due_1, div#assoc_todos_for_companies div.todo_status_2 span.due_1, div#assoc_todos_for_companies div.todo_status_3 span.due_1 {
	font-weight: bold;
	color: var(--tk-red);
}

span[de_fieldname="due_date"] {
	/* font-size: 0.9em; */
}

div.dashboard {
    /* position: absolute; */
    position: fixed;
    width: -webkit-calc(100% - 50px);
    width:    -moz-calc(100% - 50px);
    width:         calc(100% - 50px);
	
    height: -webkit-calc(100% - 50px);
    height:    -moz-calc(100% - 50px);
    height:         calc(100% - 50px);
	
    left: 25px;
    top: 25px;
    z-index: 1001;
	
	border-radius: 5px;
	padding: 20px;
    /* background: "url(/img/loading.gif) no-repeat 50% 50%" */
    background-color: var(--tk-silver);

	overflow-y: auto;
	
	/* flex properties: */
	display: flex;
	flex-flow: row-reverse wrap;
	justify-content: flex-end;
	/* justify-content: space-between; */
	align-items: stretch;
	align-content: stretch;
	gap: 5px;


}

div.widget {
	border: 2px solid var(--tk-green);
	border-radius: 5px;

    min-width: -webkit-calc((100% - 10px)/3);
    min-width:    -moz-calc((100% - 10px)/3);
    min-width:         calc((100% - 10px)/3);
	
    min-height: -webkit-calc((100% - 5px)/2);
    min-height:    -moz-calc((100% - 5px)/2);
    min-height:         calc((100% - 5px)/2);

/*
	max-width: 800px; 
	max-height: 200px;*/
	padding: 5px;
	overflow-y: hidden;
	
	/* flex properties: */
	flex-grow: 1;
}

div.widget#w_todos {
	/* min-width: 1000px; */
    max-width: -webkit-calc((100% - 5px)/2);
    max-width:    -moz-calc((100% - 5px)/2);
    max-width:         calc((100% - 5px)/2);
	
    max-height: -webkit-calc((100% - 5px)/2);
    max-height:    -moz-calc((100% - 5px)/2);
    max-height:         calc((100% - 5px)/2);
	
}

table.widget.w_todos {
	height: 100%;
}

table.widget.w_todos tbody tr:nth-child(2n) td {
  background-color: Gainsboro;
}

/* body, div, span, li, table, thead, tbody, tr, td, p, span, textarea, input, label, select, option, option:checked, option:disabled  */
/* table.widget.w_todos div, span, li, table, thead, tbody, tr, td, p, span, textarea, input, label, select, option, option:checked, option:disabled { */
table.widget.w_todos * {
	font-size: 10pt;
}

table.widget.w_todos .status {
	padding: unset !important;
	border-radius: unset !important;
}


table.widget.w_todos span, table.widget.w_todos td {
	border: 0px solid red;
	padding: 1px;
}

table.widget.w_todos tbody {
	overflow-y: scroll;
}


div.dashboard .close {
  position: absolute;
  right: 4px;
  top: 4px;
  width: 18px;
  height: 18px;
  opacity: 0.3;
}
div.dashboard .close:hover {
  opacity: 1;
}
div.dashboard .close:before, .close:after {
  position: absolute;
  left: 7px;
  top: -1px;
  content: ' ';
  height: 18px;
  width: 2px;
  background-color: #333;
}
div.dashboard .close:before {
  transform: rotate(45deg);
}
div.dashboard .close:after {
  transform: rotate(-45deg);
}

.deflash_success, .deflash_fail {
	animation-delay: 0s;
	animation-direction: normal;
	animation-duration: 0.5s;
	animation-fill-mode: none;
	animation-iteration-count: 1;
	animation-timing-function: linear;
	animation-play-state: running;
}

.deflash_success {
	animation-name: deflash_success;
}

.deflash_fail {
	animation-name: deflash_fail;
}

@keyframes deflash_success {
  from { background-color: lime; }
  to { background-color: unset; }
}

@keyframes deflash_fail {
  from { background-color: red; }
  to { background-color: unset; }
}

div.assocs, div.assocs a, div.assocs span  {
	background-color: var(--ledgibility-background) !important;
}

div.assoc, div.assoc a, div.assoc span {
	background-color: var(--ledgibility-background) !important;
}