:root {
	/* ------------------
		typo 
	------------------ */
	--step_800:;
	--step_700:;
	--step_600: clamp(1.625rem, 1.3571rem + 0.4286vw, 2rem); /* 26 - 32px / 1000 - 2400 */
	--step_500: clamp(1.5rem, 1.2321rem + 0.4286vw, 1.875rem); /* 24 - 30px */
	--step_400: clamp(1.25rem, 1.0714rem + 0.2857vw, 1.5rem); /* 20 - 24px */
	--step_300: clamp(1.125rem, 1.0357rem + 0.1429vw, 1.25rem); /* 18 - 20px */
	--step_200: clamp(0.9375rem, 0.8036rem + 0.2143vw, 1.125rem); /* 15 - 18px */
	--step_100: clamp(0.75rem, 0.6161rem + 0.2143vw, 0.9375rem); /* 12 - 15px */
	--step_small: clamp(0.625rem, 0.5357rem + 0.1429vw, 0.75rem); /* 10 - 12px */

	--fs_800: var(--step_800); /*  */
	--fs_700: var(--step_700); /*  */
	--fs_600: var(--step_600); /* 26 - 32px */
	--fs_500: var(--step_500); /* 24 - 30px */
	--fs_400: var(--step_400); /* 20 - 24px */
	--fs_300: var(--step_300); /* 18 - 20px */
	--fs_200: var(--step_200); /* 15 - 18px */
	--fs_100: var(--step_100); /* 12 - 15px */
	--fs_small: var(--step_small); /* 10 - 12px */

	--lh_16: 1.6;
	--lh_115: 1.15;
	--lh_11: 1.1;
	--lh_1: 1;
	--fs_body: var(--fs_300);
	--lh_body: var(--lh_16);
	/* ------------------
		spacing
	------------------ */
	--topnav_height: 5.75rem; /* clamp */
	--nav_ptop: calc(var(--topnav_height) - 3.125rem); /* clamp */
	--mainheader_height: calc(var(--topnav_height) + var(--nav_ptop));
	--sidenav_width: clamp(11rem, 6.5357rem + 7.1429vw, 17.25rem); /* 1000 - 2400 */
	--nav_logo_height: 1.8rem;
	--maincontent_width: 96%;
	--maincontent_maxwidth: 81.25rem;
	--maincontent_sm: 30rem;
	--maincontent_md: 60rem;
	--maincontent_lg: 100rem;
	--maincontent_xl: 120rem;
	--centered_width: 62.5rem;
	--spacer_360: clamp(15rem, 9.4186rem + 8.7209vw, 22.5rem); /* 1024 - 2400 */
	--spacer_240: clamp(7.5rem, 1.9186rem + 8.7209vw, 15rem);
	--spacer_200: clamp(7rem, 2.907rem + 6.3953vw, 12.5rem);
	--spacer_120: clamp(6rem, 4.8837rem + 1.7442vw, 7.5rem);
	--spacer_96: clamp(4rem, 2.5116rem + 2.3256vw, 6rem);
	--spacer_80: clamp(3.5rem, 2.3837rem + 1.7442vw, 5rem);
	--spacer_64: clamp(3rem, 2.2558rem + 1.1628vw, 4rem);
	--spacer_56: clamp(2.5rem, 1.7558rem + 1.1628vw, 3.5rem);
	--spacer_48: clamp(2rem, 1.2558rem + 1.1628vw, 3rem);
	--spacer_32: clamp(1.5rem, 1.1279rem + 0.5814vw, 2rem);
	--spacer_24: clamp(0.75rem, 0.1919rem + 0.8721vw, 1.5rem);
	--spacer_16: clamp(0.625rem, 0.3459rem + 0.436vw, 1rem);
	/* ------------------
		color
	------------------ */
	--clr_primary: var(--bs-link-color);
	--clr_primary_hover: var(--bs-link-hover-color);
	--clr_primary_disabled: light-dark(rgba(64, 144, 136, 0.7), rgba(64, 144, 136, 0.7));
	--clr_bg_topnav: light-dark(rgba(238, 238, 238, 1), rgba(0, 0, 0, 1));
	--clr_bg_sidenav: light-dark(rgba(238, 238, 238, 0.9), rgba(0, 0, 0, 0.8));
	--clr_bg_gray_light: rgba(214, 214, 214, 0.7);
	--clr_bg_gray_dark: rgba(214, 214, 214, 1);
	--clr_bg_input: rgba(238, 235, 235, 0.7);
	--clr_bg_btn_ghost: rgba(242, 240, 240, 1);
	/* *** CK Editor Colors *** */
	--ck-color-text: var(--clr_text);
	--ck-color-base-foreground:; /* ? */
	--ck-color-base-background: var(--bs-light);
	--ck-color-base-border: var(--clr_text);
	--ck-color-base-action:; /* ? */
	--ck-color-base-focus:; /* ? */
	--ck-color-base-text: var(--clr_text);
	--ck-color-base-active: var(--bs-primary);
	--ck-color-base-active-focus:; /* ? */
	--ck-color-base-error: var(--bs-danger);
	--ck-color-focus-border-coordinates: 218, 81.8%, 56.9%; /* original */
	--ck-color-focus-border: rgba(var(--bs-primary-rgb), 0.2);
	--ck-color-focus-outer-shadow: rgba(var(--bs-primary-rgb), .05);
	--ck-color-focus-disabled-shadow:; /* ? */
	--ck-color-focus-error-shadow: rgba(var(--bs-danger-rgb), .05);
	--ck-color-text: var(--ck-color-base-text);
	--ck-color-shadow-drop: rgba(0, 0, 0, .15); /* original */
	--ck-color-shadow-drop-active: rgba(0, 0, 0, .2); /* original */
	--ck-color-shadow-inner: rgba(0, 0, 0, .1); /* original */
	--ck-color-button-default-background: transparent; /* original */
	--ck-color-button-default-hover-background: rgba(var(--bs-primary-rgb), 0.2);
	--ck-color-button-default-active-background: rgba(var(--bs-primary-rgb), 0.2);
	--ck-color-button-default-disabled-background: transparent;
	--ck-color-button-on-background: rgba(var(--bs-primary-rgb), 0.2);
	--ck-color-button-on-hover-background: rgba(var(--bs-primary-rgb), 0.2);
	--ck-color-button-on-active-background: rgba(var(--bs-primary-rgb), 0.2);
	--ck-color-button-on-disabled-background: var(--clr_text_600);
	--ck-color-button-on-color: var(--bs-primary);
	--ck-color-button-action-background: var(--ck-color-base-action); /* original */
	--ck-color-button-action-hover-background:; /* ? */
	--ck-color-button-action-active-background: chartreuse; /* ? */
	--ck-color-button-action-disabled-background: var(--clr_text_400);
	--ck-color-button-action-text: var(--ck-color-base-background);
	--ck-color-button-save: #008a00;
	--ck-color-button-cancel: #db3700;
	--ck-color-switch-button-off-background: #939393;
	--ck-color-switch-button-off-hover-background: #7d7d7d;
	--ck-color-switch-button-on-background: var(--ck-color-button-action-background);
	--ck-color-switch-button-on-hover-background: #4d9d30;
	--ck-color-switch-button-inner-background: var(--ck-color-base-background);
	--ck-color-switch-button-inner-shadow: rgba(0, 0, 0, .1);
	--ck-color-dropdown-panel-background: var(--ck-color-base-background);
	--ck-color-dropdown-panel-border: var(--ck-color-base-border);
	--ck-color-dialog-background: var(--ck-custom-background);
	--ck-color-dialog-form-header-border: var(--ck-custom-border);
	--ck-color-input-background: var(--ck-color-base-background);
	--ck-color-input-border: var(--ck-color-base-border);
	--ck-color-input-error-border: var(--ck-color-base-error);
	--ck-color-input-text: var(--ck-color-base-text);
	--ck-color-input-disabled-background: #f2f2f2;
	--ck-color-input-disabled-border: var(--ck-color-base-border);
	--ck-color-input-disabled-text: #757575;
	--ck-color-list-background: var(--ck-color-base-background);
	--ck-color-list-button-hover-background: var(--ck-color-button-default-hover-background);
	--ck-color-list-button-on-background: var(--ck-color-button-on-color);
	--ck-color-list-button-on-background-focus: var(--ck-color-button-on-color);
	--ck-color-list-button-on-text: var(--ck-color-base-background);
	--ck-color-panel-background: var(--ck-color-base-background);
	--ck-color-panel-border: var(--ck-color-base-border);
	--ck-color-toolbar-background: var(--ck-color-base-background);
	--ck-color-toolbar-border: var(--ck-color-base-border);
	--ck-color-tooltip-background: var(--ck-color-base-text);
	--ck-color-tooltip-text: var(--ck-color-base-background);
	--ck-color-engine-placeholder-text: #707070;
	--ck-color-upload-bar-background: #6cb5f9;
	--ck-color-link-default: #0000f0;
	--ck-color-link-selected-background: rgba(31, 176, 255, .1);
	--ck-color-link-fake-selection: rgba(31, 176, 255, .3);
	--ck-color-highlight-background: #ff0;
	--ck-color-light-red: #fcc;
	--ck-widget-outline-thickness: 3px;
	--ck-widget-handler-icon-size: 1rem;
	--ck-widget-handler-animation-duration: 200ms;
	--ck-widget-handler-animation-curve: ease;
	--ck-color-widget-blurred-border: rgba(var(--bs-secondary-rgb), 1);
	--ck-color-widget-hover-border: rgba(var(--bs-primary-rgb), 0.4);
	--ck-color-widget-editable-focus-background: var(--ck-color-base-background);
	--ck-color-widget-drag-handler-icon-color: var(--ck-color-base-background);
	--ck-table-selected-cell-background: rgba(158, 207, 250, .3);
	--ck-color-selector-focused-cell-background: rgba(158, 201, 250, .3);
	--ck-disabled-opacity: .5;
	--ck-focus-outer-shadow-geometry: 0 0 0 3px;
	--ck-focus-outer-shadow: var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-outer-shadow);
	--ck-focus-disabled-outer-shadow: var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-disabled-shadow);
	--ck-focus-error-outer-shadow: var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-error-shadow);
	--ck-focus-ring: 1px solid var(--ck-color-focus-border);
	--ck-font-size-base: var(--fs_100);
	--ck-line-height-base: var(--bs-body-line-height);
	--ck-font-face: var(--bs-body-font-family);
	--ck-font-size-tiny: var(--step_small);
	--ck-font-size-small: var(--step_small);
	--ck-font-size-normal: var(--fs_100);
	--ck-font-size-big: var(--fs_200);
	--ck-font-size-large: var(--fs_300);
	--ck-border-radius: 0;
	--bs-primary: rgba(59, 105, 196, 1);
	--bs-primary-rgb: 59, 105, 196;
	/* ------------------
		styles
	------------------ */
	--box_shadow: 0px 0px 10px #00000029;
}

/* ******************** 
	Typo
 ******************** */
@font-face {
	font-family: barlow-regular;
	font-weight: 400;
	font-style: normal;
	src: url(/CMS/fonts/Barlow-Regular.ttf) format("truetype");
}

@font-face {
	font-family: barlow-medium;
	font-weight: 400;
	font-style: normal;
	src: url(/CMS/fonts/Barlow-Medium.ttf) format("truetype");
}

@font-face {
	font-family: barlow-bold;
	font-weight: 400;
	font-style: normal;
	src: url(/CMS/fonts/Barlow-Bold.ttf) format("truetype");
}

@font-face {
	font-family: nunito-regular;
	font-weight: 400;
	font-style: normal;
	src: url(/CMS/fonts/Nunito-Regular.ttf) format("truetype");
}

@font-face {
	font-family: nunito-medium;
	font-weight: 400;
	font-style: normal;
	src: url(/CMS/fonts/Nunito-Medium.ttf) format("truetype");
}

@font-face {
	font-family: nunito-semiBold;
	font-weight: 400;
	font-style: normal;
	src: url(/CMS/fonts/Nunito-SemiBold.ttf) format("truetype");
}

@font-face {
	font-family: robotoMono-regular;
	font-weight: 400;
	font-style: normal;
	src: url(/CMS/fonts/RobotoMono-Regular.ttf) format("truetype");
}

@font-face {
	font-family: robotoMono-medium;
	font-weight: 400;
	font-style: normal;
	src: url(/CMS/fonts/RobotoMono-Medium.ttf) format("truetype");
}

@font-face {
	font-family: robotoMono-semiBold;
	font-weight: 400;
	font-style: normal;
	src: url(/CMS/fonts/RobotoMono-SemiBold.ttf) format("truetype");
}

h2, .h2 {
	font-family: barlow-medium;
	font-size: var(--fs_500);
	text-transform: uppercase;
}

h3, .h3 {
	font-family: barlow-medium;
	font-size: var(--fs_400);
	text-transform: uppercase;
}

	h3.has-subheadline span {
		font-family: barlow-medium;
		font-size: var(--fs_200);
		color: var(--clr_primary);
	}

input {
	font-family: barlow-regular;
	font-size: var(--fs_100);
}

label {
	font-family: barlow-regular;
	font-size: var(--fs_small);
}

.sidenav .nav .nav-link {
	font-family: barlow-medium;
	font-size: var(--fs_300);
}

.sidenav .submenu .nav-link {
	font-family: barlow-medium;
	font-size: var(--fs_100);
}

.topnav .username {
	font-family: barlow-regular;
	font-size: var(--fs_100);
}

table thead th,
.nav-tabs .nav-link,
.application > header h3 {
	font-family: barlow-medium;
	font-size: var(--fs_100);
	text-transform: uppercase;
}

table tbody td {
	font-family: barlow-regular;
	font-size: var(--fs_100);
	border-right: 1px solid var(--bs-border-color);
}

	table tbody td:last-child {
		border-right: none;
	}

a {
	color: var(--clr_primary);
	text-decoration: none;
}

	a:hover,
	a:active,
	a:focus,
	button.textlink:hover,
	button.textlink:active,
	button.textlink:focus {
		color: var(--clr_primary_hover);
	}

	a.nav-link {
		color: var(--clr_text);
	}

		a.nav-link:hover,
		a.nav-link:active,
		a.nav-link:focus,
		a.nav-link.show,
		.menu-content button.textlink:hover,
		.menu-content button.textlink:active,
		.menu-content button.textlink:focus {
			color: var(--clr_primary);
		}

button.textlink {
	font-family: inherit;
	font-size: inherit;
	padding: 0;
	border: none;
}

.menu-content button.textlink.h3 {
	font-family: barlow-medium;
	font-size: var(--fs_400);
	text-transform: initial;
}

h1, h2, h3, h4, h5, h6, p {
	padding: 0;
	margin: 0;
}

b, strong {
	font-family: nunito-semiBold;
}

h2 b, h2 strong, .h2 b, .h2 strong,
h3 b, h3 strong, .h3 b, .h3 strong,
h3.has-subheadline b, h3.has-subheadline strong, h3.has-subheadline span b, h3.has-subheadline span strong,
.sidenav .nav .nav-link b, .sidenav .nav .nav-link strong,
.sidenav .submenu .nav-link b, .sidenav .submenu .nav-link strong,
table thead th b, table thead th strong,
.nav-tabs .nav-link b, .nav-tabs .nav-link strong,
.menu-content button.textlink.h3 b,
.menu-content button.textlink.h3 strong {
	font-family: barlow-bold;
}

table tbody td b, table tbody td strong,
input b, input strong,
label b, label strong,
.topnav .username b, .topnav .username strong {
	font-family: barlow-medium;
}

/* ******************** 
	Utility Classes
 ******************** */
.content-sm {
	width: var(--maincontent_width);
	max-width: var(--maincontent_sm);
}

.content-md {
	width: var(--maincontent_width);
	max-width: var(--maincontent_md);
}

.content-lg {
	width: var(--maincontent_width);
	max-width: var(--maincontent_lg);
}

.content-xl {
	width: var(--maincontent_width);
	max-width: var(--maincontent_xl);
}

.two-col-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 2.5rem;
	row-gap: 0;
}

.btn {
	--bs-btn-padding-x: var(--spacer_56);
	--bs-btn-padding-y: calc(var(--spacer_16) / 2);
	--bs-btn-font-family: barlow-medium;
	--bs-btn-font-size: var(--fs_200);
	--bs-btn-font-weight: 400;
	--bs-btn-line-height: 1.5;
	--bs-btn-color: var(--clr_text);
	--bs-btn-bg: transparent;
	--bs-btn-border-width: 1px;
	--bs-btn-border-color: transparent;
	--bs-btn-border-radius: 3rem;
	--bs-btn-hover-border-color: transparent;
	--bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
	--bs-btn-disabled-opacity: .5;
	--bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
	--btn_hover_border_spacing: 0.5rem;
	--btn_hover_border_width: 2px;
	position: relative;
	margin-inline: var(--btn_hover_border_spacing);
	transition: all 500ms ease;
}

	.btn:focus,
	.btn:focus-visible {
		outline: none;
		box-shadow: none;
	}

	.btn.btn-secondary:hover {
		color: var(--bs-btn-hover-color);
		background-color: var(--bs-btn-hover-bg);
		border-color: var(--bs-primary);
	}

	.btn:not(.btn-chip)::before {
		content: "";
		position: absolute;
		top: calc(var(--btn_hover_border_spacing) * -1);
		right: calc(var(--btn_hover_border_spacing) * -1);
		bottom: calc(var(--btn_hover_border_spacing) * -1);
		left: calc(var(--btn_hover_border_spacing) * -1);
		border: var(--btn_hover_border_width) solid transparent;
		border-radius: var(--bs-btn-border-radius);
		transition: border-color 0.5s ease;
	}

	.btn:not(.btn-chip):hover::before,
	.btn:not(.btn-chip):focus::before,
	.btn:not(.btn-chip):focus-visible::before,
	.btn:not(.btn-chip):active::before {
		content: "";
		position: absolute;
		top: calc(var(--btn_hover_border_spacing) * -1);
		right: calc(var(--btn_hover_border_spacing) * -1);
		bottom: calc(var(--btn_hover_border_spacing) * -1);
		left: calc(var(--btn_hover_border_spacing) * -1);
		border: var(--btn_hover_border_width) solid var(--bs-btn-bg);
		border-radius: var(--bs-btn-border-radius);
	}

	.btn.btn-secondary:hover::before,
	.btn.btn-secondary:focus::before,
	.btn.btn-secondary:focus-visible::before,
	.btn.btn-secondary:active::before {
		content: "";
		position: absolute;
		top: calc(var(--btn_hover_border_spacing) * -1);
		right: calc(var(--btn_hover_border_spacing) * -1);
		bottom: calc(var(--btn_hover_border_spacing) * -1);
		left: calc(var(--btn_hover_border_spacing) * -1);
		border: var(--btn_hover_border_width) solid var(--bs-primary);
		border-radius: var(--bs-btn-border-radius);
	}

	.btn.btn-secondary:has(~ .btn.dropdown-toggle):hover::before,
	.btn.btn-secondary:has(~ .btn.dropdown-toggle):focus::before,
	.btn.btn-secondary:has(~ .btn.dropdown-toggle):focus-visible::before,
	.btn.btn-secondary:has(~ .btn.dropdown-toggle):active::before {
		content: "";
		position: absolute;
		top: calc(var(--btn_hover_border_spacing) * -1);
		right: calc(var(--btn_hover_border_spacing) * -1);
		bottom: calc(var(--btn_hover_border_spacing) * -1);
		left: calc(var(--btn_hover_border_spacing) * -1);
		border: var(--btn_hover_border_width) solid var(--bs-primary);
		border-right: var(--btn_hover_border_width) solid transparent;
		border-top-left-radius: var(--bs-btn-border-radius);
		border-bottom-left-radius: var(--bs-btn-border-radius);
		border-top-right-radius: 0;
		border-bottom-right-radius: 0;
	}

	.btn.btn-secondary + .btn.dropdown-toggle:hover::before,
	.btn.btn-secondary + .btn.dropdown-toggle:focus::before,
	.btn.btn-secondary + .btn.dropdown-toggle:focus-visible::before,
	.btn.btn-secondary + .btn.dropdown-toggle:active::before {
		content: "";
		position: absolute;
		top: calc(var(--btn_hover_border_spacing) * -1);
		right: calc(var(--btn_hover_border_spacing) * -1);
		bottom: calc(var(--btn_hover_border_spacing) * -1);
		left: calc(var(--btn_hover_border_spacing) * -1);
		border: var(--btn_hover_border_width) solid var(--bs-primary);
		border-left: var(--btn_hover_border_width) solid transparent;
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
		border-top-right-radius: var(--bs-btn-border-radius);
		border-bottom-right-radius: var(--bs-btn-border-radius);
	}

.btn-primary {
	--bs-btn-color: #fff;
	--bs-btn-bg: var(--bs-primary);
	--bs-btn-border-color: var(--bs-primary);
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: var(--clr_primary_hover);
	--bs-btn-hover-border-color: var(--clr_primary_hover);
	--bs-btn-focus-shadow-rgb: 49, 132, 253;
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: var(--clr_primary_hover);
	--bs-btn-active-border-color: var(--clr_primary_hover);
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
	--bs-btn-disabled-color: #fff;
	--bs-btn-disabled-bg: var(--clr_primary_disabled);
	--bs-btn-disabled-border-color: var(--clr_primary_disabled);
	background-color: var(--bs-btn-bg);
}

.btn-secondary {
	--bs-btn-color: var(--bs-primary);
	--bs-btn-bg: #fff;
	--bs-btn-border-color: var(--bs-primary);
	--bs-btn-hover-color: var(--bs-primary);
	--bs-btn-hover-bg: #fff;
	--bs-btn-hover-border-color: var(--bs-primary);
	--bs-btn-focus-shadow-rgb: 130, 138, 145;
	--bs-btn-active-color: var(--bs-primary);
	--bs-btn-active-bg: #fff;
	--bs-btn-active-border-color: var(--bs-primary);
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
	--bs-btn-disabled-color: var(--bs-primary);
	--bs-btn-disabled-bg: #fff;
	--bs-btn-disabled-border-color: var(--bs-primary);
}

.btn-success {
	--bs-btn-color: #fff;
	--bs-btn-bg: #198754;
	--bs-btn-border-color: #198754;
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: #157347;
	--bs-btn-hover-border-color: #146c43;
	--bs-btn-focus-shadow-rgb: 60, 153, 110;
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: #146c43;
	--bs-btn-active-border-color: #13653f;
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
	--bs-btn-disabled-color: #fff;
	--bs-btn-disabled-bg: #198754;
	--bs-btn-disabled-border-color: #198754;
}

.btn-danger {
	--bs-btn-color: #fff;
	--bs-btn-bg: #dc3545;
	--bs-btn-border-color: #dc3545;
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: #bb2d3b;
	--bs-btn-hover-border-color: #b02a37;
	--bs-btn-focus-shadow-rgb: 225, 83, 97;
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: #b02a37;
	--bs-btn-active-border-color: #a52834;
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
	--bs-btn-disabled-color: #fff;
	--bs-btn-disabled-bg: #dc3545;
	--bs-btn-disabled-border-color: #dc3545;
}

.btn-group.dropdown {
	--bs-dropdown-zindex: 1000;
	--bs-dropdown-min-width: 10rem;
	--bs-dropdown-padding-x: 0;
	--bs-dropdown-padding-y: 0.5rem;
	--bs-dropdown-spacer: 0.125rem;
	--bs-dropdown-font-size: inherit;
	--bs-dropdown-color: #fff;
	--bs-dropdown-bg: var(--bs-primary);
	--bs-dropdown-border-color: var(--bs-border-color-translucent);
	--bs-dropdown-border-radius: var(--bs-border-radius);
	--bs-dropdown-border-width: var(--bs-border-width);
	--bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));
	--bs-dropdown-divider-bg: var(--bs-border-color-translucent);
	--bs-dropdown-divider-margin-y: 0.5rem;
	--bs-dropdown-box-shadow: var(--bs-box-shadow);
	--bs-dropdown-link-color: #fff;
	--bs-dropdown-link-hover-color: #fff;
	--bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);
	--bs-dropdown-link-active-color: #fff;
	--bs-dropdown-link-active-bg: #0d6efd;
	--bs-dropdown-link-disabled-color: var(--bs-tertiary-color);
	--bs-dropdown-item-padding-x: 1rem;
	--bs-dropdown-item-padding-y: 0.25rem;
	--bs-dropdown-header-color: #6c757d;
	--bs-dropdown-header-padding-x: 1rem;
	--bs-dropdown-header-padding-y: 0.5rem;
}

.dropdown-menu {
	--bs-dropdown-zindex: 1000;
	--bs-dropdown-min-width: 10rem;
	--bs-dropdown-padding-x: 0;
	--bs-dropdown-padding-y: 0.5rem;
	--bs-dropdown-spacer: 0.125rem;
	--bs-dropdown-font-size: 1rem;
	--bs-dropdown-color: var(--bs-body-color);
	--bs-dropdown-bg: #fff;
	--bs-dropdown-border-color: var(--bs-border-color-translucent);
	--bs-dropdown-border-radius: var(--bs-border-radius);
	--bs-dropdown-border-width: var(--bs-border-width);
	--bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));
	--bs-dropdown-divider-bg: var(--bs-border-color-translucent);
	--bs-dropdown-divider-margin-y: 0.5rem;
	--bs-dropdown-box-shadow: var(--bs-box-shadow);
	--bs-dropdown-link-color: var(--bs-body-color);
	--bs-dropdown-link-hover-color: #fff;
	--bs-dropdown-link-hover-bg: var(--clr_primary);
	--bs-dropdown-link-active-color: #fff;
	--bs-dropdown-link-active-bg: var(--clr_primary);
	--bs-dropdown-link-disabled-color: var(--bs-tertiary-color);
	--bs-dropdown-item-padding-x: 1rem;
	--bs-dropdown-item-padding-y: 0.25rem;
	--bs-dropdown-header-color: #6c757d;
	--bs-dropdown-header-padding-x: 1rem;
	--bs-dropdown-header-padding-y: 0.5rem;
	position: absolute;
	z-index: var(--bs-dropdown-zindex);
	display: none;
	min-width: var(--bs-dropdown-min-width);
	padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);
	margin: 0;
	font-size: var(--bs-dropdown-font-size);
	color: var(--bs-dropdown-color);
	text-align: left;
	list-style: none;
	background-color: var(--bs-dropdown-bg);
	background-clip: padding-box;
	border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
	border-radius: var(--bs-dropdown-border-radius);
}

.btn-group.dropdown > button.btn-primary + .dropdown-menu {
	--bs-dropdown-color: #fff;
	--bs-dropdown-bg: var(--bs-primary);
}

.btn-group.dropdown > button.btn-secondary + .dropdown-menu {
	--bs-dropdown-color: var(--clr_primary);
	--bs-dropdown-bg: #fff;
	--bs-dropdown-border-color: var(--bs-primary);
}

.btn-group.dropdown > button.btn-danger + .dropdown-menu {
	--bs-dropdown-color: #fff;
	--bs-dropdown-bg: #dc3545;
}

.btn-group.dropdown > .dropdown-menu .dropdown-item {
	--bs-dropdown-color: #fff;
	--bs-dropdown-link-color: #fff;
}

.btn-group.dropdown > button.btn-primary + .dropdown-menu .dropdown-item,
.btn-group.dropdown > button.btn-danger + .dropdown-menu .dropdown-item {
	--bs-dropdown-link-hover-color: var(--bs-primary);
	--bs-dropdown-link-hover-bg: #fff;
}

.btn-group.dropdown > button.btn-secondary + .dropdown-menu .dropdown-item {
	--bs-dropdown-color: var(--clr_primary);
	--bs-dropdown-link-color: var(--clr_primary);
	--bs-dropdown-link-hover-color: #fff;
	--bs-dropdown-link-hover-bg: var(--bs-primary);
}

.btn-round {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: calc(var(--bs-btn-font-size) + 0.75rem);
	height: calc(var(--bs-btn-font-size) + 0.75rem);
	padding: 0.5rem;
}

.btn-dot {
	--bs-btn-padding-x: 0;
	--bs-btn-padding-y: 0;
	--dot_size: var(--fs_600);
	--icon_size: calc(var(--dot_size) / 2);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--dot_size);
	height: var(--dot_size);
	border-radius: 50%;
	pointer-events: auto;
}

.btn-danger i.bi-trash {
	color: #fff !important;
}

.btn.btn-fullscreen {
	font-size: var(--fs_100);
}

.btn-chip {
	background-color: var(--bs-light);
	border: 1px solid var(--clr_text);
}

	.btn-chip > .bi {
		margin-right: 0.5rem;
	}

	.btn-chip > b {
		margin-left: 0.5rem;
	}

.filter-chips .btn-group > .btn-group:not(:last-child) > .btn,
.filter-chips .btn-group > .btn.dropdown-toggle-split:first-child,
.filter-chips .btn-group > .btn:not(:last-child):not(.dropdown-toggle) {
	border-top-right-radius: var(--bs-btn-border-radius);
	border-bottom-right-radius: var(--bs-btn-border-radius);
}

.filter-chips .btn-group > .btn-group:not(:first-child) > .btn,
.filter-chips .btn-group > .btn:nth-child(n+3),
.filter-chips .btn-group > :not(.btn-check) + .btn {
	border-top-left-radius: var(--bs-btn-border-radius);
	border-bottom-left-radius: var(--bs-btn-border-radius);
}

.filter-chips .btn-check:checked + .btn,
.filter-chips .btn.active, .btn.show,
.filter-chips .btn:first-child:active,
.filter-chips :not(.btn-check) + .btn:active,
.filter-chips .btn-chip:hover {
	color: var(--clr_text);
	background-color: #B3CEF5;
	border-color: var(--clr_text);
}

.filter-chips .badge.active {
	background-color: #B3CEF5;
}

.table-actions .btn-dot {
	--dot_size: var(--fs_400);
	--icon_size: calc(var(--dot_size) / 2.2);
}

.table-has-actions .btn-dot {
	--dot_size: var(--fs_400);
	--icon_size: calc(var(--dot_size) / 2);
}

.actions-diagram .btn-dot {
	--dot_size: var(--fs_600);
	--icon_size: calc(var(--dot_size) / 1.5);
	width: 2.8rem;
	height: 2.8rem;
	margin-right: 5px;
}

.actions-diagram {
	position: fixed;
	bottom: 50px;
	right: 100px;
}

.legend-wrapper {
	position: sticky;
	bottom: 3rem !important;
	left: 3rem;
	width: 400px;
	background: rgba(255, 255, 255, 0.6);
	margin: 1rem 1rem 2rem 2rem;
}

	.legend-wrapper .accordion {
		position: relative;
		overflow: hidden;
		padding: 0;
	}

		.legend-wrapper .accordion .accordion-item {
			background: rgba(255,255,255, 0.3);
			display: block;
			border: none !important;
		}

	.legend-wrapper .accordion-item, .legend-wrapper .accordion-header {
		padding: 0;
		margin-bottom: 0;
		cursor: pointer;
	}

	.legend-wrapper .accordion-button {
		border-radius: 0px !important;
		background: rgba(255,255,255,0.6);
	}

		.legend-wrapper .accordion-button:not(.collapsed) {
			border-radius: 0px !important;
			background: rgba(255,255,255,0.6);
		}

	.legend-wrapper .accordion-item:last-of-type > .accordion-collapse {
		border-radius: 0px;
	}

	.legend-wrapper .accordion-header, .legend-wrapper .accordion-body {
		border: none;
		background: rgba(255,255,255, 0.6);
	}

	.legend-wrapper .accordion-header {
		border-bottom: 1px solid black;
	}

	.legend-wrapper .accordion-body {
		padding-right: 2rem;
		padding-left: 2rem;
		padding-top: 0rem;
	}

		.legend-wrapper .accordion-body:before {
			height: 0;
		}

		.legend-wrapper .accordion-body .legend-content {
			font-size: 14px;
		}

.btn-dot.btn-primary {
	color: var(--bs-btn-color);
}

.btn-dot > i {
	font-size: var(--icon_size);
}

.btn-ghost {
	--bs-btn-color: var(--clr_text);
	--bs-btn-bg: var(--bs-light);
	--bs-btn-border-color: var(--clr_text);
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: var(--bs-primary);
	--bs-btn-hover-border-color: var(--bs-primary);
	--bs-btn-focus-shadow-rgb: 49, 132, 253;
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: var(--bs-primary);
	--bs-btn-active-border-color: var(--bs-primary);
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
	--bs-btn-disabled-color: var(--clr_text_800);
	--bs-btn-disabled-bg: var(--bs-light);
	--bs-btn-disabled-border-color: var(--clr_text_800);
}

.dot {
	--icon_size: calc(var(--dot_size) / 2);
	display: grid;
	align-items: center;
	justify-content: center;
	width: var(--dot_size);
	height: var(--dot_size);
	border-radius: 50%;
}

/* .btn.disabled,
.btn-dot.disabled,
.btn:disabled, 
fieldset:disabled .btn {
	color: var(--bs-btn-disabled-color);
	pointer-events: none;
	cursor: not-allowed;
	text-decoration: line-through;
	background-color: var(--bs-btn-disabled-bg);
	border-color: var(--bs-btn-disabled-border-color);
	opacity: var(--bs-btn-disabled-opacity);
} */
.btn.disabled,
.btn-dot.disabled,
.btn:disabled,
fieldset:disabled .btn {
	pointer-events: none;
	cursor: not-allowed;
	opacity: var(--bs-btn-disabled-opacity);
}

.ai-model.disabled .bg-primary,
.ai-model.disabled .btn {
	pointer-events: none;
	opacity: 0.7;
}

.btn-progress {
	display: flex;
	position: relative;
	width: 10rem;
	height: 2.75rem;
	overflow: hidden;
	font-size: var(--bs-btn-font-size);
	padding: 0;
	background-color: var(--bs-btn-bg);
	border: none;
	border-radius: var(--bs-btn-border-radius);
}

	.btn-progress .progress-bar {
		display: flex;
		flex-direction: column;
		justify-content: center;
		overflow: hidden;
		color: var(--bs-btn-color);
		text-align: center;
		white-space: nowrap;
		background-color: rgba(255, 255, 255, 0.5);
		transition: var(--bs-progress-bar-transition);
	}

	.btn-progress div.value {
		position: absolute;
		width: 100%;
		margin: 0.5rem auto 0;
	}

.fs-32 {
	font-size: var(--fs_600);
}

.fs-30 {
	font-size: var(--fs_500);
}

.fs-24 {
	font-size: var(--fs_400);
}

.fs-20 {
	font-size: var(--fs_300);
}

.fs-18 {
	font-size: var(--fs_200);
}

.fs-15 {
	font-size: var(--fs_100);
}

.clr-text-primary {
	color: var(--bs-primary);
}

.clr-text-white {
	color: #fff;
}

i.bi {
	line-height: 1;
}

h2.has-actions .btn-dot,
h3.has-actions .btn-dot,
h4.has-actions .btn-dot {
	margin-left: 0.5rem;
}

h2.has-actions .btn-dot {
	--dot_size: calc(var(--fs_500) + 0.2rem);
}

h3.has-actions .btn-dot {
	--dot_size: calc(var(--fs_400) + 0.2rem);
}

.has-actions,
.has-btn {
	display: flex;
	align-items: center;
	gap: 0.2rem;
}

.has-btn {
	gap: 0.5rem;
}

.table-has-actions {
	width: 100%;
}

table .form-control.inside-table {
	height: calc(var(--input_height) / 2);
	min-height: calc(var(--input_height) / 2);
	border: 1px solid var(--clr_text);
	background: white;
}

button.table-has-actions {
	height: 3rem;
	margin-bottom: 1rem;
	border: none;
}

header:has(> h3):has(+ .input-container > label),
header.label-follows {
	margin-bottom: calc(var(--spacer_16) / 2);
}

header:has(> h3):has(~ #hostnamecontainer) {
	margin-bottom: calc(var(--spacer_16) / 1);
}

header:has(> h3.hl-with-accordion) {
	margin-bottom: calc((var(--spacer_16) / 2) + (var(--fs_small) * 2.5));
}

header:has(> h3):has(+ .table-responsive) {
	margin-bottom: calc(var(--spacer_16) * 1.5);
}

.input-container:has(> label[for="maja_api_key_type"]):has(~ .apikeytype-web:not([hidden])) {
	margin-bottom: var(--spacer_32);
}

.mb-spacer-32 {
	margin-bottom: var(--spacer_32) !important;
}

.mb-spacer-48 {
	margin-bottom: var(--spacer_48) !important;
}

.form-control,
.form-select,
.input-group-text {
	border-radius: 0;
}

aside.form-label {
	margin: 0.1rem;
}

/* ******************** 
   Styles
 ******************** */
body {
	background: var(--bs-body-bg);
	background-attachment: fixed;
}

[data-bs-theme="dark"] body {
	background-blend-mode: darken;
}

::selection {
	color: var(--bs-body-color);
	background-color: rgba(var(--bs-primary-rgb), 0.2);
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
}

*:focus-visible {
	outline-color: rgba(var(--bs-primary-rgb), 0.6);
}

.input-container {
	--input_height: 3rem;
	--input_padding: 1rem;
	position: relative;
	margin-bottom: var(--input_padding);
}

	.input-container[hidden] * {
		height: 0;
		padding: 0;
		margin: 0;
	}

	.input-container .form-control,
	.input-container .form-select,
	.input-container .select2-container .select2-selection {
		font-family: nunito-regular;
		font-size: var(--bs-body-font-size);
		line-height: var(--lh_1);
		min-height: var(--input_height);
		height: var(--input_height);
		border: none;
		border-bottom: 1px solid var(--clr_text);
		border-radius: 0;
		background-color: var(--bs-light);
	}

		.input-container .form-control ~ .animated-border {
			width: 100%;
		}

			.input-container .form-control ~ .animated-border::after {
				content: '';
				display: block;
				margin: auto;
				height: 2px;
				width: 0px;
				background: transparent;
				transition: width .5s ease, background-color .5s ease;
			}

		.input-container .form-control:focus ~ .animated-border::after {
			width: 100%;
			background: var(--clr_primary);
		}

		.input-container .form-control:focus {
			box-shadow: none;
		}

		.input-container .form-control:disabled,
		.select2-container--default.select2-container--disabled .select2-selection,
		.input-container .form-select:disabled,
		.input-container .form-select.disabled,
		.input-container .form-control[readonly] {
			border-bottom: none;
			cursor: not-allowed;
			opacity: 0.5;
		}
	/* .input-container .form-control:user-invalid {
	background-color: rgba(var(--bs-danger-rgb), 0.2);
}
.input-container .form-control:user-invalid ~ .animated-border::after {
	background: var(--bs-danger);
	transition: none;
}
.input-container .js-example-basic-single:user-invalid .select2-container {
	background-color: rgba(var(--bs-danger-rgb), 0.2);
}
.input-container .js-example-basic-single:user-invalid ~ .select2-container .select2-selection {
	border-bottom: 2px solid var(--bs-danger);
}
.input-container .js-example-basic-single:user-invalid ~ .animated-border::after {
	background: var(--bs-danger);
	transition: none;
} */
	.input-container > label:has(~ .form-control:user-invalid),
	.input-container > label:has(~ .js-example-basic-single:user-invalid) {
		color: var(--bs-danger);
	}
	/* .input-container > label:has(~ .form-control:user-invalid) .asterisk::after,
.input-container > label:has(~ .js-example-basic-single:user-invalid) .asterisk::after {
	content: "Pflichtfeld";
	color: var(--bs-danger);
	margin-left: 0.5rem;
} */

	/* .input-container > label:has(~ input[disabled])::after,
.input-container > label:has(~ input[disabled="disabled"])::after,
.input-container > label:has(~ input.disabled)::after,
.input-container > label:has(~ select[disabled])::after,
.input-container > label:has(~ select[disabled="disabled"])::after,
.input-container > label:has(~ select.disabled)::after {
	content: "\F341";
	font-family: "Bootstrap-icons";
	color: var(--bs-modal-color);
	position: absolute;
	margin-left: 0.2rem;
} */

	.input-container label {
		font-family: barlow-regular;
		font-size: var(--fs_100);
		line-height: var(--lh_1);
		padding: 0;
	}

		.input-container label.has-actions {
			display: flex;
			align-items: flex-end;
			justify-content: space-between;
		}

			.input-container label.has-actions .actions {
				display: flex;
				gap: 0.2rem;
			}

			.input-container label.has-actions .btn-dot {
				--dot_size: calc(var(--fs_small) * 2);
			}

	.input-container .form-check label {
		font-size: var(--fs_100);
		cursor: pointer;
	}
/* .input-container .form-check input {
	font-size: calc(var(--fs_100) + 0.3rem);
} */
table .input-container .form-check input {
	border: 1px solid black;
}

table .input-container, table .input-container .form-check, table .input-container .form-check input {
	margin: 0px;
	padding: 0px;
}

table .input-container {
	display: flex;
	justify-content: center;
}

table td.input-container {
	display: table-cell;
}

.input-container input {
	accent-color: var(--clr_primary);
	padding: var(--input_padding);
}

	.input-container input[type="file"] {
		display: block;
		padding-left: 0;
		cursor: pointer;
	}

		.input-container input[type="file"]::file-selector-button {
			display: block;
			cursor: pointer;
			padding: 0.2rem 0.75rem;
			border: none;
			background: rgba(var(--bs-primary-rgb), 0.2);
			transition: all 500ms ease;
		}

			.input-container input[type="file"]::file-selector-button:hover {
				background: rgba(var(--bs-primary-rgb), 0.4);
			}

	.input-container input::placeholder {
		color: var(--clr_text_400);
	}

.input-container.input-group input
.input-container > .input-group input {
	width: 100%;
	flex: initial;
}
/* div.form-floating[class*="col"] > label {
	left: 0.75rem;
}
.input-container.form-floating>.form-control-plaintext~label, 
.input-container.form-floating>.form-control:focus~label, 
.input-container.form-floating>.form-control:not(:placeholder-shown)~label, 
.input-container.form-floating>.form-select~label {
	transform: scale(1) translateY(var(--floating_label_distance_y)) translateX(0);
} */
.input-container .form-select:focus,
.input-container .form-check-input:focus,
.select2-search--dropdown:focus-visible,
.select2-search--dropdown .select2-search__field:focus-visible {
	border: none;
	box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb),.25);
	outline: none;
}

.input-container textarea.form-control {
	height: auto;
	min-height: calc(var(--input_height) * 3);
	padding: var(--input_padding);
}

.input-container .form-check-input {
	padding: 0;
	margin-top: 0.73em;
}

.form-check-input:checked {
	background-color: var(--clr_primary);
	border-color: var(--clr_primary);
}

.input-container .upload-thumb {
	max-width: 80%;
	max-height: 15rem;
}

.input-container.input-group,
.input-container > .input-group {
	position: relative;
}

	.input-container.input-group > input,
	.input-container > .input-group > input {
		padding-right: calc(var(--input_padding) * 3);
	}

	.input-container.input-group > button,
	.input-container > .input-group > button {
		--bs-btn-padding-x: var(--input_padding);
		--bs-btn-padding-y: calc(var(--input_padding) / 2);
		position: absolute;
		right: 0;
		color: var(--clr_primary);
		z-index: 10;
	}

/* header + .input-container:not(:has(label)) { */
header:has(+ #showcases) {
	margin-bottom: 1.75rem;
}

.input-container + .input-container:not(:has(label)) {
	margin-top: calc(var(--input_padding) * 2);
}

table thead tr th:first-child:has(input[type="checkbox"]) {
	width: 1.875rem;
}

table i.bi:not(button i.bi) {
	color: var(--bs-primary);
}

table thead tr th i.bi {
	cursor: pointer;
}

.formelement-with-btn {
	--input_padding: 1rem;
	display: flex;
	margin-bottom: var(--input_padding);
}

	.formelement-with-btn > .input-container {
		margin-bottom: 0;
	}

.formelement-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: var(--fs_100);
	border-left: 2px solid #fff;
	border-bottom: 1px solid var(--clr_text);
	background-color: var(--bs-light);
	padding: 0.25rem;
	margin-bottom: 2px;
}

li:marker {
	color: var(--clr_primary);
}

.input-group > input.has-icon {
	position: relative;
	padding-right: 2rem;
}

	.input-group > input.has-icon ~ i {
		position: absolute;
		right: 0.5rem;
		top: 0.5rem;
		color: var(--clr_primary);
	}

body > .bg-bottom {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	pointer-events: none;
	/* background-image: url("/CMS/img/HG_Grafik_Bottom.svg"); */
	background-image: url("/CMS/img/HG_Grafik_Bottom.png");
	background-position-x: left;
	background-position-y: 110%;
	background-repeat: no-repeat;
	background-attachment: fixed;
	/* background-size: cover; */
	opacity: 0.4;
}

.topnav {
	position: fixed;
	top: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: end;
	min-height: var(--topnav_height);
	padding: var(--nav_ptop) var(--spacer_32) 0 0;
	/* background-color: #ccc; */
	background-color: transparent;
	transition: background-color 1s ease-in;
	z-index: 100;
}

	.topnav .bi-person-circle::before {
		vertical-align: -.2em;
	}

	.topnav:has(~ .menu-content.is-opened) {
		background-color: transparent;
	}

nav.main {
	padding-left: 0;
	border-left: 1px solid var(--bs-dark);
}

.userlogin {
	color: var(--clr_text);
	padding-top: 0.15rem;
}

.burger-menu {
	--burger_menu_width: 2.5rem;
	--burger_menu_color: var(--clr_text);
	--burger_menu_borderWith: 0.125rem;
	--burger_menu_borderColor: transparent;
	--burger_menu_borderRadius: 0.25rem;
	--burger_menu_lines_width: 75%; /* percent from menu-width */
	--burger_menu_lines_height: 8%; /* percent from menu-height */
	--burger_menu_lines_spacerMultiplier: 1.5; /* line-spacer = x-factor of line-height */
	--burger_menu_transitionTime: 150ms;
	--burger_menu_lines_radius: calc(var(--burger_menu_lines_height) / 2);
	--burger_menu_lines_spacer: calc(var(--burger_menu_lines_height) * var(--burger_menu_lines_spacerMultiplier));
	--burger_menu_lines_posLeft: calc((100% - var(--burger_menu_lines_width)) / 2);
	--burger_menu_lines_posTop: calc((100% - ((var(--burger_menu_lines_height) * 3) + (var(--burger_menu_lines_spacer) * 2))) / 2);
	--burger_menu_lines_posMiddle: calc(var(--burger_menu_lines_posTop) + var(--burger_menu_lines_height) + var(--burger_menu_lines_spacer));
	--burger_menu_lines_posBottom: calc(var(--burger_menu_lines_posMiddle) + var(--burger_menu_lines_height) + var(--burger_menu_lines_spacer));
	background: transparent;
	border: var(--burger_menu_borderWith) solid var(--burger_menu_borderColor);
	border-radius: var(--burger_menu_borderRadius);
	cursor: pointer;
}

	.burger-menu svg {
		width: var(--burger_menu_width);
		fill: var(--burger_menu_color, lime);
	}

	.burger-menu rect {
		width: var(--burger_menu_lines_width);
		height: var(--burger_menu_lines_height);
		rx: var(--burger_menu_lines_radius);
		x: var(--burger_menu_lines_posLeft);
		transition: y var(--burger_menu_transitionTime) ease-in var(--burger_menu_transitionTime), rotate var(--burger_menu_transitionTime) ease-in, opacity 0ms var(--burger_menu_transitionTime);
		transform-origin: center;
	}

		.burger-menu rect.top-line {
			y: var(--burger_menu_lines_posTop);
		}

		.burger-menu rect.middle-line {
			y: var(--burger_menu_lines_posMiddle);
		}

		.burger-menu rect.bottom-line {
			y: var(--burger_menu_lines_posBottom);
		}

	.burger-menu[aria-expanded="true"] rect {
		transition: y var(--burger_menu_transitionTime) ease-in, rotate var(--burger_menu_transitionTime) ease-in var(--burger_menu_transitionTime), opacity 0ms var(--burger_menu_transitionTime);
	}

	.burger-menu[aria-expanded="true"] {
		--burger_menu_color: var(--clr_text);
	}

		.burger-menu[aria-expanded="true"] :is(rect.top-line, rect.bottom-line) {
			y: var(--burger_menu_lines_posMiddle);
		}

		.burger-menu[aria-expanded="true"] rect.top-line {
			rotate: 45deg;
		}

		.burger-menu[aria-expanded="true"] rect.middle-line {
			opacity: 0;
		}

		.burger-menu[aria-expanded="true"] rect.bottom-line {
			rotate: -45deg;
		}

.menu-content {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	background-color: var(--clr_bg_topnav);
	box-shadow: var(--box_shadow);
	z-index: 50;
	transition: all 900ms ease-in-out;
}

	.menu-content.is-closed {
		transform: translateY(-50rem);
	}

	.menu-content.is-opened {
		transform: translateY(0);
	}

.mainmenu-container {
	display: flex;
	padding: var(--spacer_48);
	padding-right: 0;
	margin: 0 9rem 0 0;
}

.mainmenu-products {
	display: flex;
	flex: 1;
}

	.mainmenu-products > h2 {
		padding-right: var(--spacer_32);
	}

	.mainmenu-products > div {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: var(--spacer_16);
		border-left: 1px solid var(--bs-dark);
		padding-inline: var(--spacer_32);
	}

.mainmenu-productitems h3,
.mainmenu-usercontent a {
	text-transform: initial;
}

.mainmenu-productitems p {
	color: var(--clr_text);
}

.mainmenu-usercontent {
	min-width: 10%;
	text-align: right;
	padding: 0.1rem 0 0 var(--spacer_32);
}

	.mainmenu-usercontent a {
		display: block;
	}

	.mainmenu-usercontent .username {
		font-family: barlow-bold;
		font-size: var(--fs_300);
		color: var(--clr_text);
	}

	.mainmenu-usercontent .userlink {
		font-family: barlow-medium;
		font-size: var(--fs_300);
		color: var(--clr_text);
	}

		.mainmenu-usercontent .userlink:hover {
			color: var(--clr_primary);
		}

main {
	display: grid;
	grid-template-columns: var(--sidenav_width) 1fr;
	height: 100vh;
	transition: all 1s ease-in-out;
}

	main:has(.sidenav.collapsed) {
		grid-template-columns: 0rem 1fr;
	}

.sidenav {
	--mr_logos: 1.5rem;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	justify-content: space-between;
	height: 100%;
	padding-top: var(--nav_ptop);
	background-color: var(--clr_bg_sidenav);
	box-shadow: var(--box_shadow);
	overflow-y: auto;
	z-index: 110;
}

	.sidenav div > a {
		display: block;
		margin: 0 var(--mr_logos) var(--nav_ptop) 0;
	}

	.sidenav .nav-logo {
		height: var(--nav_logo_height);
	}

	.sidenav .bi-logo {
		height: 4rem;
		margin: 0 var(--mr_logos) var(--nav_ptop) 0;
	}

	.sidenav .nav {
		flex-direction: column;
		align-items: flex-end;
	}

		.sidenav .nav > .nav-item .nav-link {
			padding-right: var(--mr_logos);
			white-space: nowrap;
		}
	/* .sidenav.collapsed .nav > .nav-item .nav-link {
	white-space: nowrap;
} */
	.sidenav .nav-item {
		width: 100%;
		text-align: right;
		padding: 0;
		border-bottom: 1px solid var(--clr_border_light);
	}

	.sidenav .nav-link {
		padding-right: 0;
	}

		.sidenav .nav-link[aria-expanded="true"] {
			color: var(--clr_primary);
			border-bottom: 1px solid var(--clr_border_light);
		}

	.sidenav .submenu {
		background: transparent linear-gradient(90deg, light-dark(#EDEDED, #000) 0%, light-dark(#DFDFDF, #3e3e3e) 100%) 0% 0% no-repeat;
	}

	.sidenav li {
		list-style: none;
	}

.sidenav-toggle-wrap {
	position: absolute;
	width: 0;
	height: 0;
}

.sidenav-toggle {
	position: absolute;
	display: flex;
	justify-content: end;
	align-items: center;
	width: 2rem;
	height: 2rem;
	padding-right: 0.25rem;
	background-color: var(--clr_primary);
	border: none;
	border-top-right-radius: 0.25rem;
	border-bottom-right-radius: 0.25rem;
}

	.sidenav-toggle i {
		font-size: 1.2rem;
		color: #fff;
	}

.maincontent {
	overflow-y: auto;
}

.app-biexport .maincontent > .wrapper {
	margin-top: var(--nav_ptop);
}

	.app-biexport .maincontent > .wrapper > h1 {
		font-family: barlow-medium;
		font-size: var(--fs_500);
		text-transform: uppercase;
		margin-bottom: calc(var(--nav_ptop) + 0.5rem);
	}

		.app-biexport .maincontent > .wrapper > h1 span {
			font-family: barlow-medium;
			font-size: var(--fs_400);
			text-transform: initial;
			margin-bottom: calc(var(--nav_ptop) + 0.5rem);
		}

/* test start */
.maincontent {
	--max_height_deduction: calc((var(--mainheader_height) * 2) + var(--spacer_24) + 4.5rem);
	overflow-y: hidden;
}

	.maincontent:has(.wrapper.ai-models),
	.maincontent:has(.wrapper.detail-page) {
		overflow-y: auto;
	}

.wrapper > .btn-row {
	margin-bottom: var(--spacer_32);
}

.wrapper > .card > .table-inputs {
	display: flex;
	justify-content: space-between;
	margin-bottom: var(--bs-card-spacer-y);
}

	.wrapper > .card > .table-inputs > div {
		display: flex;
		align-items: center;
	}

		.wrapper > .card > .table-inputs > div > * {
			margin-right: 0.5rem;
		}

	.wrapper > .card > .table-inputs input,
	.wrapper > .card > .table-inputs select,
	.wrapper > .card > .table-inputs .input-group-text {
		background-color: var(--bs-light);
		border: none;
	}

.card.scrollable {
	max-height: 80vh;
	overflow: hidden;
}

	.card.scrollable .table-responsive {
		overflow-y: auto;
		flex: 1;
		width: 100%;
		/* max-height: calc(100vh - var(--max_height_deduction)); */
		max-height: calc(80vh - 8rem);
		position: relative;
	}

		.card.scrollable .table-responsive table thead {
			position: sticky;
			z-index: 1;
			top: 0;
			border: none;
			border-bottom: 0.75rem solid #fff;
			background: var(--bs-secondary);
		}

		.card.scrollable .table-responsive table tfoot {
			position: sticky;
			z-index: 1;
			bottom: -1px;
			background: #fff;
			border: none;
		}

.wrapper > .card.has-tabs {
	display: block;
	position: relative;
}

	.wrapper > .card.has-tabs .card-header {
		padding: 0;
	}

.wrapper > .card .card-body {
	max-height: calc(100vh - var(--max_height_deduction) - 4rem);
	padding: calc(var(--nav-link-padding) * 2) calc(var(--nav-link-padding) * 3);
	overflow-y: auto;
	overflow-x: hidden;
}

.wrapper > .card.has-tabs .card-footer {
	padding: calc(var(--nav-link-padding) * 2) calc(var(--nav-link-padding) * 3 + 1rem);
}
/* test end */

.maincontent > .wrapper {
	width: var(--maincontent_width);
	max-width: var(--maincontent_maxwidth);
	margin: calc(var(--mainheader_height) - 0.3rem) auto;
}

	.maincontent > .wrapper.fluid-width {
		width: auto;
		max-width: 100%;
		margin-inline: var(--spacer_64);
	}

	.maincontent > .wrapper > .centered > header,
	.maincontent > .wrapper > header {
		margin-bottom: var(--spacer_24);
	}

		.maincontent > .wrapper > header.has-actions {
			display: flex;
			align-items: center;
			justify-content: space-between;
		}

.card .has-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.maincontent > .wrapper > header.has-actions > h2 {
	flex: 1 1 auto;
}

.maincontent > .wrapper > header.has-actions > .search-area {
	width: 30%;
}

.page-centered .wrapper {
	display: grid;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 100%;
	height: 100%;
	margin: 0;
}

	.page-centered .wrapper.content-sm,
	.page-centered .wrapper.content-md,
	.page-centered .wrapper.content-lg,
	.page-centered .wrapper.content-xl {
		width: 100%;
		max-width: 100%;
	}

.page-centered .centered > * {
	width: var(--maincontent_width);
	max-width: var(--maincontent_maxwidth);
	max-height: 80vh;
}

.page-centered .wrapper.content-sm .centered > * {
	max-width: var(--maincontent_sm);
}

.page-centered .wrapper.content-md .centered > * {
	max-width: var(--maincontent_md);
}

.page-centered .wrapper.content-lg .centered > * {
	max-width: var(--maincontent_lg);
}

.page-centered .wrapper.content-xl .centered > * {
	max-width: var(--maincontent_xl);
}

.products h2 {
	line-height: var(--lh_16);
	border-bottom: 1px solid var(--bs-dark);
	margin-bottom: var(--spacer_24);
}

.product-list {
	--min: 7rem;
	--max: 14rem;
	--gap: var(--spacer_24);
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(var(--min), var(--max)));
	gap: var(--gap);
}

	.product-list .card {
		padding-inline: var(--spacer_32);
	}

	.product-list .card-body {
		display: grid;
		align-items: center;
		justify-content: center;
		padding: 0;
	}

		.product-list .card-body img {
			max-width: 100%;
			height: 3rem;
		}

.card {
	--bs-box-shadow: var(--box_shadow);
	--bs-card-border-width: 0;
	--bs-card-border-radius: 0;
	--bs-card-inner-border-radius: 0;
	--bs-card-border-color: transparent;
	--bs-card-spacer-y: var(--spacer_32);
	--bs-card-spacer-x: var(--spacer_32);
	/* --bs-card-cap-padding-y: var(--spacer_16);
	--bs-card-cap-padding-x: var(--spacer_32); */
	--bs-card-cap-bg: transparent;
	--bs-card-bg: light-dark(rgba(255, 255, 255, 1), #5f5f5f);
	padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);
}

.accordion {
	--bs-accordion-btn-bg: var(--clr_bg_input);
}

.accordion-button {
	--bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.25);
	height: 2.8rem;
}

	.accordion-button:not(.collapsed) {
		color: var(--bs-accordion-btn-color);
		background-color: var(--bs-accordion-btn-bg);
		box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
	}

	.accordion-button:focus {
		z-index: 3;
		outline: 0;
		box-shadow: var(--bs-accordion-btn-focus-box-shadow);
	}

.accordion-item {
	margin-bottom: 1rem;
	border: 1px solid var(--bs-accordion-border-color) !important;
}

	.accordion-item:first-of-type {
		border-top-left-radius: 0 !important;
		border-top-right-radius: 0 !important;
	}

	.accordion-item:last-of-type {
		border-bottom-left-radius: 0 !important;
		border-bottom-right-radius: 0 !important;
	}

.accordion-with-cards {
	--bs-accordion-border-color: var(--bs-accordion-btn-bg);
}

	.accordion-with-cards .accordion-button {
		line-height: 1;
	}

		.accordion-with-cards .accordion-button .empty {
			--bs-badge-padding-x: 0.65em;
			--bs-badge-padding-y: 0.35em;
			--bs-badge-font-size: var(--fs_100);
			--bs-badge-font-weight: normal;
			--bs-badge-color: var(--bs-primary);
			--bs-badge-border-radius: 50%;
			margin-right: 0.75rem;
			background-color: var(--clr_text_200);
		}

		.accordion-with-cards .accordion-button .badge:not(.empty) {
			--bs-badge-padding-x: 0.65em;
			--bs-badge-padding-y: 0.35em;
			--bs-badge-font-size: var(--fs_100);
			--bs-badge-font-weight: normal;
			--bs-badge-color: white;
			--bs-badge-border-radius: 50%;
			margin-right: 0.75rem;
			background-color: var(--bs-primary);
		}

		.accordion-with-cards .accordion-button .btn-dot {
			--dot_size: var(--fs_400);
			margin-left: 0.75rem;
		}

	.accordion-with-cards .accordion-body {
		padding-top: calc(var(--bs-accordion-btn-padding-y) * 2);
		padding-bottom: calc(var(--bs-accordion-btn-padding-y) * 3);
		background-color: var(--bs-accordion-btn-bg);
	}

.accordion-card {
	display: grid;
	grid-template-columns: 1fr 5rem;
	padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
	margin-bottom: var(--bs-accordion-btn-padding-x);
	background-color: #fff;
}

	.accordion-card:has(.accordion-card-actions) {
		padding-right: 0;
	}

.accordion-card-actions {
	display: flex;
	align-items: center;
	justify-content: center;
}

.card table {
	margin-bottom: 0;
}

.card-list {
	--cols: 3;
	--gap: var(--spacer_24);
	display: grid;
	grid-template-columns: repeat(var(--cols), 1fr);
	gap: var(--gap);
}

.card-list-item {
	--dot_size: 2.25rem;
}

	.card-list-item header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		margin-bottom: var(--spacer_32);
	}

		.card-list-item header > div:last-child {
			--gap: 0.5rem;
			display: flex;
			gap: var(--gap);
			width: calc(var(--dot_size) * 2 + var(--gap));
		}

	.card-list-item .card-content {
		margin-bottom: var(--spacer_32);
	}

		.card-list-item .card-content > p {
			display: -webkit-box;
			-webkit-line-clamp: 3;
			-webkit-box-orient: vertical;
			overflow: hidden;
		}

		.card-list-item .card-content > b {
			margin-top: var(--spacer_24);
		}

table {
	--bs-table-color: var(--clr_text);
	border: none;
}

	table tr.bg-secondary {
		border-color: var(--bs-secondary);
	}

	table > thead th,
	table > thead th a {
		color: var(--clr_text);
	}

		table > thead th a:hover,
		table > thead th a i.bi {
			color: var(--clr_primary);
		}

	table > thead:has(tr.bg-secondary) th {
		border: none;
		border-right: 1px solid var(--clr_text_500);
	}

		table > thead:has(tr.bg-secondary) th:last-child {
			border: none;
		}

	table .bottom-gap:has(.bg-secondary) {
		border: 1px solid var(--bs-secondary);
		border-bottom: 0.75rem solid transparent;
	}

	table > tbody > tr {
		border-left: 1px solid var(--bs-secondary);
		border-right: 1px solid var(--bs-secondary);
	}

.table-actions {
	--dot_size: 2rem;
}

table > tfoot nav {
	padding-top: var(--spacer_24);
}

table > tfoot tr,
table > tfoot tr td {
	border: none;
}

	table > tfoot tr td {
		padding-inline: 0 !important;
	}

.card.card-list-item .card-body,
.card.has-tabs {
	--bs-card-spacer-y: 0;
	--bs-card-spacer-x: 0;
	--nav-link-padding: 1rem;
}

.nav-tabs {
	--bs-nav-tabs-border-width: var(--bs-border-width);
	--bs-nav-tabs-border-color: transparent;
	--bs-nav-tabs-border-radius: 0;
	--bs-nav-tabs-link-hover-color: var(--clr_text);
	--bs-nav-tabs-link-hover-bg: var(--clr_text_400);
	--bs-nav-tabs-link-hover-border-color: var(--bs-nav-tabs-border-color);
	--bs-nav-tabs-link-active-color: var(--clr_text);
	--bs-nav-tabs-link-active-bg: var(--clr_text_400);
	--bs-nav-tabs-link-active-border-color: var(--bs-nav-tabs-border-color);
	--bs-nav-link-padding-x: 1.5rem;
	--bs-nav-link-padding-y: 1rem;
	--bs-nav-link-color: var(--clr_text);
	--bs-nav-link-hover-color: var(--clr_text);
	--bs-nav-link-disabled-color: var(--clr_text_100);
	border: none;
}

	.nav-tabs .nav-link {
		color: var(--clr_text);
		border: 3px solid var(--bs-secondary);
		border-bottom: 3px solid var(--bs-nav-tabs-border-color);
		background-color: var(--bs-secondary);
	}

		.nav-tabs .nav-link.disabled {
			pointer-events: none;
			cursor: not-allowed;
			color: var(--clr_text_500);
		}

		.nav-tabs .nav-item.show .nav-link,
		.nav-tabs .nav-link.active,
		.nav-tabs .nav-link:active,
		.nav-tabs .nav-link:focus,
		.nav-tabs .nav-link:hover {
			font-family: barlow-bold;
			color: var(--clr_text);
			border: 3px solid var(--bs-nav-tabs-border-color);
			border-bottom: 3px solid var(--bs-primary);
			background-color: var(--bs-nav-tabs-link-hover-bg);
		}

	.nav-tabs + .tab-content {
		padding: calc(var(--nav-link-padding) * 2) calc(var(--nav-link-padding) * 3);
	}

.tab-content {
	height: auto;
}

	.tab-content .tab-pane {
		display: none;
		flex-direction: column;
	}

		.tab-content .tab-pane .pane-body {
			flex: 1 1 auto;
		}

		.tab-content .tab-pane.active {
			display: flex;
		}

.tab-pane > footer {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.5rem;
}

.pagination {
	--bs-pagination-padding-x: 0.75rem;
	--bs-pagination-padding-y: 0.375rem;
	--bs-pagination-font-size: var(--fs_100);
	--bs-pagination-color: var(--clr_text);
	--bs-pagination-bg: transparent;
	--bs-pagination-border-width: var(--bs-border-width);
	--bs-pagination-border-color: var(--bs-border-color);
	--bs-pagination-border-radius: 0;
	--bs-pagination-hover-color: #fff;
	--bs-pagination-hover-bg: var(--clr_primary);
	--bs-pagination-hover-border-color: var(--clr_primary);
	--bs-pagination-focus-color: var(--bs-pagination-hover-color);
	--bs-pagination-focus-bg: var(--bs-pagination-hover-bg);
	--bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
	--bs-pagination-active-color: var(--bs-pagination-hover-color);
	--bs-pagination-active-bg: var(--bs-pagination-hover-bg);
	--bs-pagination-active-border-color: var(--clr_primary);
	--bs-pagination-disabled-color: var(--clr_text_800);
	--bs-pagination-disabled-bg: var(--bs-light);
	--bs-pagination-disabled-border-color: var(--bs-border-color);
	display: flex;
	justify-content: flex-end;
	list-style: none;
	margin-bottom: 0;
}

.select2-container .select2-selection--single .select2-selection__rendered,
.select2-container--default .select2-selection--single .select2-selection__rendered {
	color: var(--clr_text);
	padding: var(--input_padding);
	line-height: 1;
	width: calc(100% - var(--input_padding) * 4);
}

.select2-container .select2-selection--single .select2-selection__clear {
	display: flex;
	align-items: center;
	position: absolute;
	right: calc(var(--input_padding) * 2);
	font-family: nunito-regular;
	font-size: var(--fs_100);
	line-height: var(--lh_1);
	height: var(--input_height);
	margin-right: 0;
	padding: var(--input_padding);
}

	.select2-container .select2-selection--single .select2-selection__clear > span {
		font-size: var(--fs_300);
		font-weight: normal;
	}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: var(--input_height);
	position: absolute;
	top: 0;
	right: var(--input_padding);
	width: var(--input_padding);
}

	.select2-container--default .select2-selection--single .select2-selection__arrow b {
		border-color: var(--clr_text) transparent transparent transparent;
		border-style: solid;
		border-width: 7px 6px 0 6px;
		height: 0;
		left: 50%;
		margin-left: -4px;
		margin-top: -2px;
		position: absolute;
		top: 50%;
		width: 0;
	}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
	border-color: transparent transparent var(--clr_text) transparent;
	border-width: 0 6px 7px 6px;
}

.select2-dropdown {
	font-family: nunito-regular;
	font-size: var(--fs_100);
	line-height: var(--lh_1);
	background-color: var(--bs-light);
	border: 1px solid var(--bs-light);
	border-bottom: 2px solid var(--clr_primary);
	border-radius: 0;
	padding: 1rem;
	display: block;
	position: absolute;
	left: -100000px;
	width: 100%;
	z-index: 1051;
}

.select2-results__option {
	padding-block: 0.5rem;
}

.select2-search--dropdown {
	padding: 0;
	margin-bottom: 1.5rem;
}

	.select2-search--dropdown .select2-search__field,
	.select2-container--default .select2-search--dropdown .select2-search__field {
		background-color: #fff;
		border: 1px solid var(--clr_text);
		border-radius: 0;
		padding: 0.5rem;
	}

.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable,
.select2-container--default .select2-results__option--selected {
	background-color: transparent;
	color: var(--clr_primary);
}

.select2-hidden-accessible {
	left: 0;
	bottom: 0;
	width: 100% !important;
}

.select2-container--default {
	width: 100% !important;
}

.modal {
	--bs-modal-zindex: 1055;
	--bs-modal-width: 500px;
	--bs-modal-padding: var(--spacer_48);
	--bs-modal-margin: 0.5rem;
	--bs-modal-color: var(--clr_text);
	--bs-modal-bg: light-dark(#fff, #5f5f5f);
	--bs-modal-border-color: var(--bs-border-color-translucent);
	--bs-modal-border-width: 0;
	--bs-modal-border-radius: 0;
	--bs-modal-box-shadow: var(--box_shadow);
	--bs-modal-inner-border-radius: 0;
	--bs-modal-header-padding-x: var(--spacer_32);
	--bs-modal-header-padding-y: var(--spacer_32);
	--bs-modal-header-padding: var(--spacer_32) var(--spacer_32);
	--bs-modal-header-border-color: var(--bs-border-color);
	--bs-modal-header-border-width: 0;
	--bs-modal-title-line-height: 1;
	--bs-modal-footer-gap: 0;
	--bs-modal-footer-bg: transparent;
	--bs-modal-footer-border-color: var(--bs-border-color);
	--bs-modal-footer-border-width: 0;
	--padding_y_inner: calc(var(--bs-modal-padding) / 2);
}

.modal-backdrop {
	--bs-backdrop-opacity: 0.6;
}

.modal-dialog-scrollable .modal-content {
	overflow: initial;
}

.modal-content .bg-bottom {
	position: absolute;
	bottom: 0;
	width: 100%;
	height: calc(var(--spacer_80) + 3rem);
	pointer-events: none;
	/* background-image: url(/CMS/img/HG_Grafik_Bottom.svg); */
	background-image: url(/CMS/img/HG_Grafik_Bottom.png);
	background-position-x: left;
	/* background-position-y: calc(var(--spacer_80) - 4rem); */
	background-repeat: no-repeat;
	background-size: cover;
	opacity: 0.4;
}

.modal-header {
	padding-bottom: 0;
}

	.modal-header h5 {
		font-family: barlow-medium;
		font-size: var(--fs_500);
		text-transform: uppercase;
	}

	.modal-header .btn-close {
		padding: 0.5rem;
		margin: 0;
	}

		.modal-header .btn-close::after {
		}

.modal-body {
	padding: var(--bs-modal-padding);
}

	.modal-body > .input-container {
		margin-bottom: var(--bs-modal-padding);
	}

.modal-footer {
	gap: 0.5rem;
	padding: var(--bs-modal-padding);
	padding-top: 0;
	padding-bottom: calc(var(--padding_y_inner) * 3);
	z-index: 1;
	position: relative;
}

.modal-content form .modal-body {
	display: block;
	position: relative;
	padding: 0;
}

	.modal-content form .modal-body:not(.has-tabs) {
		max-height: calc(100vh - var(--max_height_deduction) - 14rem);
		overflow-y: auto;
		padding: var(--bs-modal-padding);
	}

	.modal-content form .modal-body.has-tabs .tab-content {
		padding: var(--bs-modal-padding);
	}

	.modal-content form .modal-body.has-tabs .tab-pane {
		height: calc(100vh - var(--max_height_deduction) - 14rem);
		overflow-y: scroll;
	}

.modal-body > .nav-tabs {
	border-bottom: 1px solid var(--clr_text);
	/* margin-bottom: calc(var(--input_padding) + 1rem); */
	margin-bottom: 1rem;
}

	.modal-body > .nav-tabs > .nav-item .nav-link {
		border-bottom: 1px solid transparent;
	}

		.modal-body > .nav-tabs > .nav-item .nav-link.active,
		.modal-body > .nav-tabs > .nav-item .nav-link:hover,
		.modal-body > .nav-tabs > .nav-item .nav-link:active,
		.modal-body > .nav-tabs > .nav-item .nav-link:focus {
			border-bottom: 3px solid var(--bs-primary);
		}

.modal .row.mb-section:has(> div[style="display: none;"]) {
	margin-bottom: 0;
}

.application,
.mb-section {
	margin-bottom: var(--bs-modal-padding);
}

	.application > header {
		display: flex;
		align-items: center;
		margin-bottom: 0.75rem;
	}

		.application > header > h3 {
			font-family: barlow-medium;
			font-size: var(--fs_200);
			line-height: var(--lh_1);
			text-transform: uppercase;
		}

		.application > header > button {
			--bs-btn-font-size: 0.75rem;
			margin-left: 0.75rem;
		}

	.application .formelement-with-btn {
		align-items: center;
	}

		.application .formelement-with-btn > button {
			--bs-btn-font-size: 0.75rem;
		}


.code {
	background-color: var(--clr_bg_input);
	border: 1px solid var(--clr_text);
	padding: var(--spacer_24);
	font-size: var(--fs_100);
	white-space: pre-wrap;
	word-break: break-all;
}

.ck-editor .ck.ck-editor__top {
	background-color: var(--bs-secondary);
}

.ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content {
	border: 1px solid var(--clr_text_400);
}

.ck.ck-editor__editable.ck-focused:not(.ck-editor__nested-editable) {
	border: none;
	border-bottom: 2px solid var(--clr_primary);
	box-shadow: none;
}

.ck.ck-content.ck-editor__editable {
	font-size: var(--fs_100);
	padding: 1rem;
	border: none;
	border-bottom: 1px solid var(--clr_text);
}

.ck.ck-editor__editable_inline > :first-child {
	margin-top: 0;
}

.ck-editor__editable {
	min-height: 18.5rem;
}

.ck-content blockquote {
	border-left: 5px solid rgba(var(--bs-primary-rgb), 0.6);
}

.ck-content .table table {
	border: 1px double rgba(var(--bs-secondary-rgb),1);
}

	.ck-content .table table td,
	.ck-content .table table th {
		border: 1px solid rgba(var(--bs-secondary-rgb),1);
	}

.ck-widget.table td.ck-editor__nested-editable.ck-editor__nested-editable_focused,
.ck-widget.table td.ck-editor__nested-editable:focus,
.ck-widget.table th.ck-editor__nested-editable.ck-editor__nested-editable_focused,
.ck-widget.table th.ck-editor__nested-editable:focus {
	background: var(--ck-color-button-default-hover-background);
	border-style: none;
	outline: none;
	outline-offset: -1px;
}

.ck .ck-editor__nested-editable.ck-editor__nested-editable_focused,
.ck .ck-editor__nested-editable:focus {
	border: none;
	box-shadow: none;
	outline: none;
}

#diagram-container {
	height: calc(100vh - 10rem);
}

.e-diagram {
	background-color: transparent;
}

.e-diagram-userhandle-circle {
	cursor: pointer;
}

.e-diagram-userhandle-path {
	cursor: pointer;
}

.dropbox .gui-controls a {
	font-size: var(--fs_200);
}

.dropbox .gui-controls > .gui-folder > a {
	display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

table .align-action-label {
	text-align: center;
}

table .align-action-btns {
	text-align: right;
}

#diagram-spacer {
	height: calc(60vh - 5rem);
}

.form-check {
	margin-bottom: 0;
}

.badge {
	--bs-badge-padding-x: 0.65em;
	--bs-badge-padding-y: 0.35em;
	--bs-badge-font-size: 0.75em;
	--bs-badge-font-weight: 300;
	--bs-badge-color: var(--clr_text);
	--bs-badge-border-radius: var(--bs-border-radius);
}

.gutter {
	background-color: var(--clr_text_500);
	cursor: col-resize;
}

/* ************************* */
/* ***** media queries ***** */
/* ************************* */

@media (min-width: 31em) { /* ca 490px Auflösung */

}

@media (min-width: 42em) { /* ca 670px Auflösung */

}

@media (min-width: 59em) { /* ca 950px Auflösung */
	.maincontent {
		--max_height_deduction: calc((var(--mainheader_height) * 2) + var(--spacer_24));
	}
}

@media (min-width: 71em) { /* ca 1100px Auflösung */

}

@media (min-width: 86em) { /* ca 1400px Auflösung */
	.maincontent {
		--max_height_deduction: calc((var(--mainheader_height) * 2) + var(--spacer_24) + 1rem);
	}

	.mainmenu-container {
		margin: 0 9rem 0 var(--sidenav_width);
	}
}

@media (min-width: 118em) { /* ca 1890px Auflösung */
	:root {
		--nav_logo_height: 2.625rem;
	}

	.sidenav .bi-logo {
		height: 5rem;
	}

	.modal-xxl {
		--bs-modal-width: 1600px;
	}
}

@media (min-width: 137em) { /* ca 2200px Auflösung */

}
