/* Custom CSS
--------------------------------------------------------- */

.fw-100 {font-weight:100 !important;}
.fw-200 {font-weight:200 !important;}
.fw-300 {font-weight:300 !important;}
.fw-400 {font-weight:400 !important;}
.fw-500 {font-weight:500 !important;}
.fw-600 {font-weight:600 !important;}
.fw-700 {font-weight:700 !important;}
.fw-800 {font-weight:800 !important;}
.fw-900 {font-weight:900 !important;}

h1, h2, h3, h4, h5, h6 {
	font-weight: 600;
}



table, tr {
	width: 100%;
}
/* tr:nth-child(even) {
	background: var(--c-lightest-gray);
} */
tr:hover {
	background: #e5e5e5 !important;
}
table th {
	background-color: #eee;
}
table th,
table td {
	text-align:left;
	padding: 6px 26px;
    font-size: 1.6rem;
	border: 1px solid #ccc;
}
.next-update-td {
	font-weight: bold;
}
table .customer.close-to-overtime td.next-update-td {color: orange;}
table .customer.overtime td.next-update-td {color: var(--c-danger);}
.status-message span {
	display: none;
}
.contracts-container {
	width: 100%;
	margin-bottom: 80px;
}
.customer {
	/* width: 100%;
	margin-bottom: 20px;
	border-radius: var(--border-radius);
	padding: 20px 40px;
	background-color: var(--c-lightest-gray);
	display: flex;
	align-items: center;
	justify-content: space-between; */
}
.status-message {
	display: inline-flex;
	align-items:center;
	justify-content: center;
	/* flex-direction:column; */
	grid-gap: 10px;
}
.status-icon {
	color: #fff;
	width: 25px;
	height: 25px;
	font-size: 20px;
	padding: 5px;
	display: inline-flex;
	align-items:center;
	justify-content: center;
	border-radius: 50%;
}
.status-icon svg {
	width: 16px;
	height: 16px;
}
.customer.overtime .status-icon {background-color: var(--c-danger);}
.customer.in-time .status-icon {background-color: var(--c-success);}
.customer.close-to-overtime .status-icon {background-color: orange;}
#wartungs-table th {
	cursor:pointer;
	position: relative;
	/* pointer-events: none; */
}
/* #wartungs-table th.next-date-th {
	pointer-events: all;
} */
#wartungs-table thead th::after {
	content:"";
	position: absolute;
	top: 0;
	bottom:0;
	margin: auto;
	right: 10px;
	width: 16px;
	height: 16px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 16px;
}
#wartungs-table thead th.desc::after {
	background-image: url('../images/arrow-up.svg');
}
#wartungs-table thead th.asc::after {
	background-image: url('../images/arrow-down.svg');
}
.customer.inactive {
	color: var(--c-light-gray);
}
.message-bg {
	position: fixed;
	top: 0;
	left:0;
	right:0;
	bottom:0;
	height: 100%;
	width: 100%;
	z-index: 9000;
	background-color:rgba(0,0,0,.5);
	opacity: 0;
	/* pointer-events: none; */
	visibility: hidden;
}
.update-message {
	position: fixed;
	top: 0;
	left: 50%;
	right: auto;
	bottom: 0;
	transform: translateX(-50%) translateY(40px);
	max-width: 90vw;
	/* border: 4px solid currentColor; */
	/* background: rgb(from var(--c-success) r g b / 10%); */
	background: var(--c-success);
	z-index: 9010;
	margin: auto;
	padding: 20px 40px;
	height: 100px;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	font-size: 22px;
	transition: all .4s ease;
	box-shadow: 0 10px 20px rgba(0,0,0,.2);
	color: var(--c-white);
	border-radius: 10px;
	font-weight: bold;
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
}
.message-bg.active,
.info-tooltip.active,
.update-message.active {
	opacity: 1;
	pointer-events: all;
	visibility: visible;
}
.update-message.active {
	transform: translateX(-50%) translateY(0px);	
}
.update-message svg {
	background: white;
	color: var(--c-success);
	width: 30px;
	height: 30px;
	border-radius: 30px;
	padding: 3px;
	margin-right: 20px;
	position: relative;
	top: 1px;
}
.update-message.update-failed {
	background: var(--c-danger);
}
.update-message.update-failed svg {
	color: var(--c-danger);
}
td.actions {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	grid-gap: 10px;
}
.info-tooltip {
	position: absolute;
	right: 100%;
	top: -20px;
	padding: 20px 50px 20px 20px;
	background: #ffffff;
	border: 1px solid #ccc;
	max-width: 80vw;
	width: 400px;
	font-size: 12px;
	box-shadow: 0 10px 20px rgba(0,0,0,.2);
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
}
.mitarbeiter-filter-nav {
	list-style: none;
	margin: 20px 0;
}
.mitarbeiter-filter-nav li {
	display: inline-block;
	margin: 0 10px 10px 0;
}
.mitarbeiter-filter-nav li button {
	border-radius: var(--border-radius);
	background-color: transparent;
	padding: 1.2rem 2.4rem;
	color: var(--c-text);
	cursor: pointer;
	border-width: 1px;
	margin: 0;
}
.mitarbeiter-filter-nav li button.active {
	background-color: var(--c-primary);
	color: var(--c-text);
}
.tooltip-close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	right: 0;
	top: 0;
	border-radius: 0;
	border: 0;
	padding: 10px;
	cursor: pointer;
	color: var(--c-danger);
}
.tooltip-close svg {
	display: inline-block;
	height: 20px;
	width: 20px;
}
a,
button {
	cursor:pointer;
	transition: all .2s ease;
}

.iconbtn {
	display: inline-flex;
	margin: 0;
	border-radius: 40px !important;
	align-items: center;
	justify-content: center;
	border: 1px solid;
	text-align: center;
	padding: 1.2rem 1.2rem;
	white-space: nowrap;
	font-weight: bold;
	text-transform: uppercase;
}
.iconbtn svg {
	background-color: #fff;
	color: currentColor;
	display: inline-block;
	width: 24px;
	height: 24px;
	padding: 3px;
	margin-right: 10px;
	border-radius: 24px;
}

.iconbtn.success {
	border-color: var(--c-success);
	background-color: var(--c-success);
	color: #ffffff;
}
.iconbtn.success:hover {
	background-color: var(--c-success-alt);
	color: #ffffff;
}
.iconbtn.success svg {
	color: var(--c-success);
}


.iconbtn.gray {
	color: var(--c-text);
	background-color: rgba(0, 0, 0, .1);
	border-color: rgba(0, 0, 0, .1);
}
.iconbtn.gray:hover {
	color: var(--c-text);
	background-color: rgba(0, 0, 0, .15);
	border-color: rgba(0, 0, 0, .1);
}

.iconbtn.read-info {
	color: var(--c-text);
	background-color: #fff;
	/* border-color: rgba(0, 0, 0, .1); */
}
.iconbtn.read-info:hover {
	background-color: #f9f9f9;
}
.iconbtn.read-info svg {
	background-color: transparent;
	padding: 0;
	margin-right: 0;
	border-radius: 0;
}

/* Hosting Infos */
.title-wrap-inner {
	grid-gap: 10px;
}
.hosting-info-container {
	display: none;
}
.toggle-hosting-infos {
	cursor:pointer;
	padding: 0 !important;
	margin: 0 0 0 10px !important;
	display: inline-flex;
	width: 24px;
	height: 24px;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
}
.toggle-hosting-infos svg {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0;
	padding: 0;
	position: relative;
}
.toggle-hosting-infos.active svg {
	transform: rotate(180deg);
}
