@charset "UTF-8";
/****************************/
/** Imports **/
/****************************/
@import url(../fonts/font.css);

/****************************/
/** Font **/
/****************************/
body{
	font-family: 'OpenSans,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji",simple-line-icons' !important;
}

.app-wrapper .app-content {
	box-shadow: none;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, 
div, span, applet, object, iframe, 
h1, h2, h3, h4, h5, h6, p, pre, a, abbr, acronym, address, 
big, cite, del, dfn, em, img, ins, kbd, q, s, samp, small, 
strike, strong, sub, sup, tt, var, b, u, center, dl, dt, 
dd, ol, ul, li, fieldset, form, label, legend, table, caption, 
tbody, tfoot, thead, tr, th, td, article, aside, canvas, details,
embed, figure, figcaption, footer, header, hgroup, menu, nav, output,
ruby, section, summary, time, mark, 
audio, video{
	font-family: 'OpenSans' !important
}

:root {
	--color_0: 255,255,255;
	--color_1: 255,255,255;
	--color_2: 0,0,0;
	--color_3: 237,28,36;
	--color_4: 0,136,203;
	--color_5: 255,203,5;
	--color_6: 114,114,114;
	--color_7: 176,176,176;
	--color_8: 255,255,255;
	--color_9: 114,114,114;
	--color_10: 176,176,176;
	--color_11: 255,255,255;
	--color_12: 232,230,230;
	--color_13: 199,199,199;
	--color_14: 153,153,151;
	--color_15: 0,0,0;
	--color_16: 255,255,255;
	--color_17: 213,213,213;
	--color_18: 170,170,170;
	--color_19: 128,128,128;
	--color_20: 85,85,85;
	--color_21: 252,168,184;
	--color_22: 248,124,148;
	--color_23: 245,0,47;
	--color_24: 163,0,31;
	--color_25: 82,0,16;
	--color_26: 210,172,247;
	--color_27: 186,131,240;
	--color_28: 128,21,232;
	--color_29: 85,14,155;
	--color_30: 43,7,77;
	--color_31: 255,221,170;
	--color_32: 255,204,128;
	--color_33: 255,153,0;
	--color_34: 170,102,0;
	--color_35: 85,51,0;
	--color_36: 255,255,255;
	--color_37: 0,0,0;
	--color_38: 232,230,230;
	--color_39: 199,199,199;
	--color_40: 153,153,151;
	--color_41: 170,170,170;
	--color_42: 245,0,47;
	--color_43: 163,0,31;
	--color_44: 128,128,128;
	--color_45: 245,0,47;
	--color_46: 245,0,47;
	--color_47: 153,153,151;
	--color_48: 170,170,170;
	--color_49: 170,170,170;
	--color_50: 255,255,255;
	--color_51: 255,255,255;
	--color_52: 170,170,170;
	--color_53: 170,170,170;
	--color_54: 199,199,199;
	--color_55: 199,199,199;
	--color_56: 255,255,255;
	--color_57: 255,255,255;
	--color_58: 170,170,170;
	--color_59: 170,170,170;
	--color_60: 170,170,170;
	--color_61: 170,170,170;
	--color_62: 255,255,255;
	--color_63: 255,255,255;
	--color_64: 199,199,199;
	--color_65: 199,199,199;
	--orientation: row-reverse;
	--symbolColor: var(--color_23);
	--alpha-symbolColor: 1;
	--symbolColorSelected: var(--color_15);
	--text-alignment: end;
	--paddingEnd: 14px;
}


.app-wrapper .semi-nav {
	width: 5.5rem;
}
.app-wrapper .semi-nav .app-logo {
	width: 89px;
}

.semi-nav:not(.horizontal-sidebar):not(:hover) .app-logo .logo {
	width: 74px;
}

.semi-nav:not(.horizontal-sidebar):not(:hover) .avatar {
	margin-left: .41rem !important;
	margin-right: .5rem !important;
}

div .semi-nav ~ footer {
	padding-left: 5.5rem;
}


nav .app-nav .main-nav > li.no-sub.active a::before {
	content: "";
	width: 4px;
	height: 28px;
	position: absolute;
	top: 6px;
	left: 16px;
	font-size: 20px;
	background-color: rgba(var(--primary), 1);
	border-radius: var(--app-border-radius);
}

body.dark nav .app-logo .logo img, .login-form-container .logo img {
	filter: inherit;
}

.login-form-container .logo {
	border-radius: inherit;
	background-color: transparent;
}

/* Sidebar: Phosphor-Icons wie SVG-Sprites in main-nav */
nav .app-nav .main-nav > li:not(.menu-title) > a .nav-menu-icon,
nav .app-nav .main-nav > li:not(.menu-title) > a i.iconoir-user,
nav .app-nav .main-nav > li:not(.menu-title) > a i.iconoir-database-settings,
nav .app-nav .main-nav > li:not(.menu-title) > a i.iconoir-mail {
	width: 1.375rem;
	height: 1.375rem;
	font-size: 1.2rem;
	margin-right: 0.3rem;
	margin-top: -1px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
nav .app-nav .main-nav > li:not(.menu-title) > a[aria-expanded=true] .nav-menu-icon,
nav .app-nav .main-nav > li:not(.menu-title) > a[aria-expanded=true] i.iconoir-user,
nav .app-nav .main-nav > li:not(.menu-title) > a[aria-expanded=true] i.iconoir-database-settings,
nav .app-nav .main-nav > li:not(.menu-title) > a[aria-expanded=true] i.iconoir-mail {
	color: rgba(var(--white), 1);
}

.sign-in-bg .main-container {
	justify-content: center;
}

/* Rechtliche Seiten: Impressum, Datenschutz, AGB */
.cms-legal-guest-header {
	background: rgba(var(--white), 1);
	border-bottom: 1px solid rgba(var(--dark), 0.08);
}
.cms-legal-guest-logo img {
	display: block;
	height: 36px;
	width: auto;
}
.cms-legal-main {
	min-height: calc(100vh - 72px);
	background: rgba(var(--light), 0.35);
}
.cms-legal-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}
.cms-legal-tab {
	display: inline-flex;
	align-items: center;
	border: 1px solid rgba(var(--dark), 0.1);
	border-radius: 999px;
	padding: 0.35rem 0.9rem;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.4;
	text-decoration: none;
	color: rgba(var(--dark), 0.75);
	background: rgba(var(--white), 1);
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.cms-legal-tab:hover {
	color: rgba(var(--primary), 1);
	border-color: rgba(var(--primary), 0.35);
}
.cms-legal-tab.active {
	background: rgba(var(--primary), 1);
	border-color: rgba(var(--primary), 1);
	color: rgba(var(--white), 1);
}
.cms-legal-card {
	border: 1px solid rgba(var(--dark), 0.08);
	box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
}
.cms-legal-hero {
	background: linear-gradient(135deg, rgba(var(--primary), 0.08) 0%, rgba(var(--white), 1) 55%);
}
.cms-legal-hero-title {
	font-weight: 600;
	color: rgba(var(--dark), 1);
}
.cms-legal-icon-wrap {
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 0.65rem;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(var(--primary), 0.1);
	color: rgba(var(--primary), 1);
	font-size: 1.15rem;
}
.cms-legal-card-title {
	font-weight: 600;
	color: rgba(var(--dark), 1);
}
.cms-legal-section-title {
	font-weight: 600;
	color: rgba(var(--dark), 1);
}
.cms-legal-prose {
	color: rgba(var(--dark), 0.78);
	font-size: 0.9375rem;
	line-height: 1.65;
}
.cms-legal-prose p:last-child,
.cms-legal-prose ul:last-child {
	margin-bottom: 0;
}
.cms-legal-bullet-list,
.cms-legal-dot-list,
.cms-legal-meta-list,
.cms-legal-address-block {
	padding-left: 0;
	list-style: none;
	margin: 0;
}
.cms-legal-bullet-list > li,
.cms-legal-dot-list > li {
	margin-bottom: 1rem;
	padding-left: 1.25rem;
	position: relative;
}
.cms-legal-bullet-list > li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.55rem;
	width: 0.45rem;
	height: 0.45rem;
	border-radius: 50%;
	background: rgba(var(--primary), 1);
}
.cms-legal-dot-list > li::before {
	content: "•";
	position: absolute;
	left: 0;
	color: rgba(var(--primary), 1);
}
.cms-legal-meta-list li {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.75rem;
	margin-bottom: 0.35rem;
}
.cms-legal-meta-list li span:first-child {
	font-weight: 600;
	color: rgba(var(--dark), 0.85);
	min-width: 11rem;
}
.cms-legal-address-block li {
	margin-bottom: 0.15rem;
}
.cms-legal-pdf-frame {
	position: relative;
	width: 100%;
	min-height: 72vh;
	background: rgba(var(--light), 0.5);
}
.cms-legal-pdf-frame iframe {
	display: block;
	width: 100%;
	height: 72vh;
	border: 0;
}