/**, *::after, *::before {
	-webkit-user-drag: none;
	-webkit-app-region: no-drag;
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-webkit-user-drag: none;
	-khtml-user-drag: none;
	-moz-user-drag: none;
	-o-user-drag: none;
	user-drag: none;
}*/
*, *::after, *::before {
	-webkit-user-drag: none; /* See .spDraggable. */
}

body {
	font-size: 100%;
	min-height: 100vh;
	background-color: var(--main-bg-color);
	color: var(--main-text-color);
	overflow-y: scroll; /* Force vertical scrollbar. */
}
@media screen and (max-width: 60em) {
	body {
		font-size: 100%;
	}
}
@media screen and (max-width: 45em) {
	body {
		font-size: 100%;
	}
}

::-webkit-scrollbar {
	width: 1em;
}
::-webkit-scrollbar-track {
	background: var(--fieldset-border-color);
}
::-webkit-scrollbar-thumb {
	background-color: var(--fieldset-bg-color);
	border-radius: 1em;
	border: 0.2em solid var(--fieldset-border-color);
}

body {
	/*noinspection CssUnknownProperty*/
	scrollbar-width: thin;
	/*noinspection CssUnknownProperty*/
	scrollbar-color: var(--menu-text-color) var(--menu-bg-color-active);
}
body::-webkit-scrollbar-track {
	background: var(--menu-bg-color-active);
}
body::-webkit-scrollbar-thumb {
	background-color: var(--menu-text-color);
	border-color: var(--menu-bg-color-active);
}

input {
	accent-color: var(--matter-color-intense);
}

/*input,
textarea,
select {
	font-weight: 400;
}
table thead tr th,
form label {
	font-family: museo-sans, Tahoma, sans-serif;
}*/
body,
table,
input,
button,
textarea,
select,
select optgroup,
select option,
body.wmService #wmNav ul li a,
body.wmService #wmNav ul li a span {
	font-family: Roboto, Tahoma, sans-serif;
	font-weight: 400;
}
h1, h2, h3, h4, h5, h6,
h1 *, h2 *, h3 *, h4 *, h5 *, h6 * {
	font-family: Roboto, Tahoma, sans-serif;
	font-weight: 500;
}

button {
	background-color: var(--matter-color);
}
abbr,
.spAbbr {
	font-style: italic;
	font-family: Georgia, "Times New Roman", Times, serif;
	line-height: 1;
}

body.wmService #wmNav ul li a {
	color: var(--menu-text-color);
}

body.wmService header,
#spPanelAltAction {
	background-color: var(--menu-bg-color) !important;
}

table.wmTableComplex thead tr th,
table.wmTableComplex thead tr td,
table.wmTableComplex tbody tr th small,
table.wmTableComplex tbody tr td small,
table.wmTableComplex .wmTableDataDetail,
.wmTextLight,
.wmIconLight::before {
	color: var(--main-text-color-light);
}

body.wmService #wmLogo {
	margin-top: 0;
	margin-bottom: 1.5rem;
}
body.wmService #wmLogo h1 a {
	background-color: var(--menu-bg-color-active);
	height: 3.5rem;
	/*noinspection CssUnknownTarget*/
	background-image: url(/f/i/i/iconDarkBg160.png);
	/*background-size: 95%;*/
	background-size: contain;
}
body.wmService #wmNav ul li a {
	border-left: none;
	border-right: 0.2em solid rgba(0, 0, 0, 0);
	padding-left: 1em;
	font-size: 1.2rem;
	/*color: #212121 !important;*/
	text-shadow: none !important;
}
@media screen and (max-width: 90em) {
	#wmLogo {
		display: none;
	}
	#wmNav {
		margin-top: 1rem;
	}
}


a {
	text-decoration: none;
}



body.wmService #wmLogo h1 a {
	position: relative;
	overflow: hidden;
}
body.wmService #wmLogo h1 a::before {
	position: absolute;
	top: 0;
	left: -75%;
	z-index: 2;
	display: block;
	content: '';
	width: 50%;
	height: 100%;
	background: -webkit-linear-gradient(left, var(--bright-transparent) 0%, var(--brighter-3) 100%);
	background: linear-gradient(to right, var(--bright-transparent) 0%, var(--brighter-3) 100%);
	-webkit-transform: skewX(-25deg);
	transform: skewX(-25deg);
}
body.wmService #wmLogo h1 a:hover::before {
	-webkit-animation: shine .75s;
	animation: shine .75s;
}
@-webkit-keyframes shine {
	100% {
		left: 125%;
	}
}
@keyframes shine {
	100% {
		left: 125%;
	}
}


body.wmService #wmNav ul li a span {
	display: inline;
}
#wmNav ul li a::before {
	margin-right: 0.6em;
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
}
/*body.wmService21 #wmNav ul li a:hover::before,
body.wmService21 #wmNav ul li.active a::before,
body.wmService21 #wmNav ul li.active a:hover::before {
	color: var(--matter-color);
}*/

#wmNav_index::before {
	content: "\e81c";
}
#wmNav_matters::before {
	content: "\e814";
}
#wmNav_add::before {
	content: "\e818";
}
#wmNav_administration::before {
	content: "\e817";
}

#wmNav_ext_invoices::before {
	content: "\e826";
}

/*#wmNav_tasks,
#wmNav_terms {
	border-bottom: 1px solid var(--menu-bg-color-active);
}*/

.spCalendarIconDay {
	position: absolute;
	width: 5rem; /* Taken from #menu. */
	border-right: 0.2em solid rgba(0, 0, 0, 0); /* Taken from body.wmService #wmNav ul li a. */
	top: 35%;
	left: 1px;
	text-align: center;
	line-height: 1em;
}
.spCalendarIconDay > span {
	font-weight: 500 !important;
	font-size: 1rem;
	width: 100% !important;
	display: block;
}

@media screen and (min-width: 90em) {
	#wmNavContainer1 {
		display: none;
	}
	#menu {
		width: 5em;
	}
	/*#menu:hover {
		width: 13%;
	}*/
	body.wmService #menu #wmNav ul li a {
		padding: 0.4em 0;
	}
	body.wmService #menu #wmNav ul li a:hover,
	body.wmService #menu #wmNav ul li a:active,
	body.wmService #wmNav ul li.active a {
		background-color: var(--menu-bg-color-active) !important;
	}
	body.wmService #menu #wmNav ul li a::before {
		display: block;
		text-align: center;
		font-size: 1.5em;
		margin: 0;
	}
	body.wmService #menu #wmNav ul li a > span {
		display: none;
	}
	body.wmService .wmBody .wmRow {
		margin-left: 5em;
	}
}
@media screen and (min-width: 121em) {
	#wmNavContainer1 {
		display: block;
	}
	#menu {
		/*width: 13%;*/
		width: 10vw;
	}
	body.wmService #menu #wmNav ul li a {
		padding: 0.5em 0 0.5em 10%;
	}
	body.wmService #menu #wmNav ul li a::before {
		display: inline-block;
		text-align: left;
		font-size: 1em;
		margin-right: 0.6em;
	}
	body.wmService #menu #wmNav ul li a span {
		display: inline-block;
	}
	body.wmService .wmBody .wmRow {
		/*margin-left: 13%;*/
		margin-left: 10vw;
	}
	.spCalendarIconDay {
		border-right: none;
		top: 22%;
		width: 1rem;
		margin-left: 10%;
	}
	.spCalendarIconDay > span {
		font-size: 0.7rem;
	}
}


/*body.wmBoardTopHide .wmBody {
	padding-top: 0 !important;
}
body.wmBoardTopHide .wmBody .wmBoardTop {
	display: none;
}*/
body .wmBody {
	padding-top: 0 !important;
}
body .wmBody .wmBoardTop {
	display: none;
}
#wmPanelRightSupport,
#wmPanelRight .wmPanelSeparator {
	display: none;
}


input,
select,
textarea {
	cursor: pointer;
}
/*input:invalid {
	padding-bottom: 0 !important;
	border-bottom: 2px solid #e74c3c !important;
}*/
input.inputDecimal {
	text-align: right;
}


.spPanelTop {
	background-color: var(--menu-bg-color);
	/*background-color: var(--menu-bg-color-active);*/
	/*border-bottom: 1px solid var(--fieldset-border-color);*/
	/*line-height: 3.5rem;*/
	color: var(--main-text-color-light);
}
.spPanelTop > div > div {
	height: 3.5rem;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
}
.spPanelTop > div > div > div {
	display: flex;
	flex-direction: column;
	justify-content: space-around;
}
/* Navigation for mobile / small screens. */
@media screen and (max-width: 90em) {
	body.wmService .wmBody .spPanelTop > .wmRow {
		margin-left: 3.5rem;
	}
}

.spPanelAltRight {

}

.spTextLight {
	color: var(--main-text-color-light);
}


/*@media screen and (min-width: 117em) {
	html,
	body {
		height: auto;
	}
	body.wmService.spPanelAlt {
		position: relative;
		float: left;
		width: 100%;
	}
	body.wmService.spPanelAlt .wmBody {
		position: static;
	}

	body.wmService.spPanelAlt.spPanelAlt_1 .wmBody .wmRow {
		margin-right: 21.75%;
	}
	body.wmService.spPanelAlt.spPanelAlt_2 .wmBody .wmRow {
		margin-right: 43.5%;
	}

	body.wmService .spPanelTop {
		position: fixed;
		z-index: 98;
		width: 100%;
		top: 0;
		left: 0;
	}
	body.wmService .spColorizeContainer {
		padding-top: 3.5rem;
	}

	body.wmService.spPanelAlt .wmBody #spPanelAlt {
		position: absolute;
		right: 0;
		top: 3.5rem;
		height: 100%;
		background-color: var(--history-bg-color);
	}
	body.wmService.spPanelAlt.spPanelAlt_1 .wmBody #spPanelAlt {
		width: 20.75%;
	}
	body.wmService.spPanelAlt.spPanelAlt_2 .wmBody #spPanelAlt {
		width: 42.5%;
	}
	body.wmService.spPanelAlt .wmBody #spPanelAlt .wmRow {
		margin: 0;
		height: 100%;
	}
	body.wmService.spPanelAlt .wmBody #spPanelAlt .wmRow > div {
		padding: 0;
		height: 100%;
	}
	body.wmService.spPanelAlt .wmBody #spPanelAlt .wmBoardMonoIcon {
		border: none;
		border-radius: 1em;
		background-color: #f5f6f9;
	}
}*/


@media screen and (min-width: 117em) {
	/*html,
	body {
		height: auto;
	}
	body.wmService.spPanelAlt {
		position: relative;
		float: left;
		width: 100%;
	}
	body.wmService.spPanelAlt .wmBody {
		position: static;
	}

	body.wmService.spPanelAlt.spPanelAlt_1 .wmBody .wmRow {
		margin-right: 21.75%;
	}
	body.wmService.spPanelAlt.spPanelAlt_2 .wmBody .wmRow {
		margin-right: 43.5%;
	}*/
	body.wmService {
		overflow: hidden;
	}
	body.wmService header {
		top: 0;
	}
	body.wmService .wmBody {
		min-height: 0;
		padding: 0;
	}

	body.wmService .spPanelTop {
		position: fixed;
		z-index: 98;
		width: 100%;
		top: 0;
		left: 0;
	}
	body.wmService .spPanelTop > .wmRow {
		margin-right: 0;
	}

	body.wmService #spBodyMain {
		padding-top: 3.5rem;
		height: 100vh;
	}
	body.wmService.spPanelTopHidden #spBodyMain {
		padding-top: 0;
	}
	body.wmService.spPanelAlt #spBodyMain {
		margin-right: 20.75vw;
	}
	body.wmService #spBodyMain > div {
		height: 100%;
		overflow-y: auto;
		z-index: 96;
		position: relative;
		padding-bottom: 2em;
	}
	body.wmService.spPanelAlt.spPanelAlt_2 #spBodyMain > div {
		padding-right: 20.75vw;
	}

	body.wmService.spPanelAlt .wmBody #spPanelAltAction {
		position: fixed;
		z-index: 97;
		right: 0;
		top: 3.5rem;
		width: 20.75vw;
		height: calc(100% - 3.5rem);
	}

	body.wmService.spPanelAlt.spPanelAlt_2 .wmBody #spPanelAltRight {
		position: absolute;
		z-index: 97;
		right: 0;
		top: 0;
		width: 20.75vw;
		padding: 0;
		background-color: var(--history-bg-color);
		min-height: 100%;
	}
	.spHistory #spChatContainer {
		position: fixed;
		bottom: 0;
		width: 20.75vw;
	}

	/*body.wmService #spBodyMain .spColorizeContainer {
		position: fixed;
		z-index: 95;
		width: 100%;
		margin-right: 20.75vw;
		padding-right: 20.75vw;
	}*/
	body.wmService #spBodyMain .spColorizeContainer {
		/*position: sticky;*/ /* TODO Add toggle. */
		top: 0;
		z-index: 95;
		width: 100%;
	}

	body.wmService.spPanelAlt.spPanelActionDouble #spBodyMain {
		margin-right: 41.5vw;
	}
	body.wmService.spPanelAlt.spPanelActionDouble .wmBody #spPanelAltAction {
		width: 41.5vw;
	}

	body.wmService.spDocumentGlance #spBodyMain {
		padding-top: 0;
	}
	body.wmService.spDocumentGlance #spBodyMain > div {
		overflow-y: hidden;
	}

	/*body.wmService.spPanelAlt .wmBody #spPanelAlt {
		position: absolute;
		right: 0;
		top: 3.5rem;
		height: 100%;
		background-color: var(--history-bg-color);
	}
	body.wmService.spPanelAlt.spPanelAlt_1 .wmBody #spPanelAlt {
		width: 20.75%;
	}
	body.wmService.spPanelAlt.spPanelAlt_2 .wmBody #spPanelAlt {
		width: 42.5%;
	}
	body.wmService.spPanelAlt .wmBody #spPanelAlt .wmRow {
		margin: 0;
		height: 100%;
	}
	body.wmService.spPanelAlt .wmBody #spPanelAlt .wmRow > div {
		padding: 0;
		height: 100%;
	}
	body.wmService.spPanelAlt .wmBody #spPanelAlt .wmBoardMonoIcon {
		border: none;
		border-radius: 1em;
		background-color: #f5f6f9;
	}*/
}


body.wmService.spPdfPage #spBodyMain > div {
	padding-bottom: 0;
}


.spDraggable {
	-webkit-user-drag: auto;
}


.wmBoard {
	color: #0e1a35;
}


/*#wmNavSub {
	margin-top: 0.6em;
}*/
#wmNavSub ul {
	overflow: hidden;
	margin-top: 0;
}
#wmNavSub ul > li {
	margin: 0 1.7em 0 0;
	float: left;
}
#wmNavSub ul > li:last-child {
	margin-right: 0;
}
#wmNavSub ul > li a,
#wmNavSub ul > li > div {
	padding: 0.2em 0 0.5em 0;
	display: block;
	color: var(--brighter-5);
	text-decoration: none;
	border-bottom: 0.3em solid rgba(0, 0, 0, 0);
}
#wmNavSub ul > li a::after {
	content: "";
}
#wmNavSub ul > li.active a,
#wmNavSub ul > li a:hover,
#wmNavSub ul > li a:active {
	color: var(--brightest);
	border-bottom: 0.3em solid var(--brighter-5);
}
#wmNavSub ul > li > div {
	color: var(--brighter-1);
	font-weight: 500;
}

.spPanelTop .spSearch {
	position: relative;
	margin-left: 1em;
}
.spPanelTop .spSearch input {
	display: block;
	border: none !important;
	/*background-color: var(--brighter-1);*/
	background: transparent !important;
	border-bottom: 1px solid var(--brighter-3) !important;
	border-radius: 0;
	padding: 0.4em 0.5em 0.4em 2em;
	font-size: 1em;
	margin: 0;
	color: var(--brightest) !important;
}
.spPanelTop .spSearch .icon {
	color: var(--brighter-3);
	position: absolute;
	top: 50%;
	left: 0.5em;
	font-size: 1.2em;
	line-height: 1em;
	margin-top: -0.5em;
}

.spPanelTop label {
	line-height: 1;
	font-size: 0.8em;
	color: var(--main-text-color-light);
	display: block;
}
.spPanelTop select {
	background-color: var(--menu-bg-color);
	color: var(--brightest);
	border: none;
	margin: 0;
	padding: 0;
	border-radius: unset;
}
.spPanelTop select option {
	margin: 0;
	padding: 0;
}
.spPanelTop .spTopArea {
	padding-left: 0.7em;
	margin-left: 0.7em;
	border-left: 1px solid var(--brighter-1);
}
.spPanelTop .spTopArea.main {
	flex: 1;
	overflow: hidden;
}
.spPanelTop .spTopArea .button {
	font-size: 2em;
}
.spPanelTop .spTopArea .button::before {
	margin-right: 0;
}

.spPanelTop .spTopArea .spNotifications {
	display: flex;
	align-items: center;
}
.spPanelTop .spTopArea .spNotifications .button::before {
	margin-right: 0.2em;
}
#spNotificationPreview {
	margin-left: 0.2em;
}
.spNotifications .spNotification {
	display: flex;
	align-items: center;
	line-height: 1.4;
	margin-left: 0.6em;
	background-color: var(--brighter-0);
	color: var(--brightest);
	white-space: nowrap;
}
.spNotifications .spNotification > .icon {
	font-size: 1.6em;
	padding: 0 0.2rem 0 0.4rem;
}
.spNotifications .spNotification > .icon > div::before {
	margin: 0;
}
.spNotifications .spNotification > .message {
	padding: 0.1rem 0.4rem 0.1rem 0.2rem;
}
/*.spNotifications a.spNotification:link,
.spNotifications a.spNotification:visited {
}*/
.spNotifications a.spNotification:hover,
.spNotifications a.spNotification:active {
	opacity: 0.9;
}
#spNotificationCount::before {
	font-size: 0.85em;
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
}
.active #spNotificationCount::before {
	content: "\e839";
}
.inactive #spNotificationCount::before {
	content: "\e83a";
}
#spNotificationsDropDown {
	background-color: var(--menu-bg-color);
	color: var(--main-text-color-light);
	max-width: 50em;
	width: 50%;
	position: absolute;
	z-index: 9990;
}
#spNotificationsDropDown > .menu {
	display: flex;
	gap: 0.3em;
	background-color: var(--menu-bg-color-active);
	padding: 0.3em 0.2em;
}
#spNotificationsDropDown > .menu > div {
	padding: 0.1em 0.6em;
}
#spNotificationsDropDown > .menu > div:first-child label {
	color: var(--brightest);
}
#spNotificationsDropDown > .menu input,
#spNotificationsDropDown > .menu label {
	display: inline-block;
	font-size: 1em;
	margin: 0;
	padding: 0;
	vertical-align: middle;
}
#spNotificationsDropDown > .menu label {
	margin-left: 0.3em;
}
#spNotificationsDropDown .spNotification {
	margin: 0.3em;
	white-space: normal;
}

/* Big checkbox. */
input.spCheckboxBig[type='checkbox'] {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	vertical-align: middle;
	outline: none;
	font-size: inherit;
	cursor: pointer;
	width: 1em;
	height: 1em;
	background: var(--fieldset-bg-color);
	border-radius: 0.25em;
	border-color: currentColor;
	border-style: solid;
	border-width: 0.125em;
	position: relative;
	padding: 0;
	margin: 0;
	line-height: 1;
	color: var(--main-text-color-light);
}
input.spCheckboxBig[type='checkbox']:checked {
	background: var(--matter-color-mildest);
	border-color: var(--main-text-color);
}
input.spCheckboxBig[type='checkbox']:checked::after {
	/*content: "\2714";*/
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
	content: "\e815";
	line-height: 1;
	position: absolute;
	font-size: 70%;
	left: 0.04em;
	top: 0.02em;
	color: var(--main-text-color);
}

.spPanelSmall {
	background-color: var(--fieldset-bg-color);
	margin-top: 0.7em;
	border-bottom: 1px solid var(--fieldset-border-color);
}
.spPanelSmall .header {
	padding: 1.3em 1em 0.8em 1em;
	border-bottom: 1px solid var(--fieldset-border-color);
}
.spPanelSmall .content {
	overflow: hidden;
}
.spPanelSmall .content > div {
	float: left;
	width: 50%;
	padding: 1em;
}
.spPanelSmall a.wmButton {
	display: inline-block;
}
.spPanelSmall table {
	width: 100%;
}
.spPanelSmall table td {
	padding: 0.4em;
}

.spContentGeneral {
	background-color: var(--fieldset-bg-color);
	margin-top: 0.7em;
	border-bottom: 1px solid var(--fieldset-border-color);
	padding: 0.6em 0.7em;
}

.spElement {
}
/*.spElement .spFieldset {
	border-bottom: 1px solid var(--fieldset-border-color);
	margin-top: 0.7em;
}*/
.spElement .spFieldset {
	border-bottom: 1px solid var(--fieldset-border-color);
	margin-top: 0;
}
.spElement .spFieldset .spFieldsetHeading  {
	margin-top: 0.7em;
}
.spElement .spFieldset > div {
	background-color: var(--fieldset-bg-color);
}
.spElement.spElementInactive strong {
	font-weight: 500;
}

/*.spElement.spElementInactive.spStatusInactive,
.spHistory.spStatusInactive {
	background-image: repeating-linear-gradient(-45deg, transparent 0 1em, var(--brighter-5) 1em 2em);
}
.spElement.spElementInactive.spStatusInactive .spFieldset > div {
	background-color: var(--brighter-5);
}
.spHistory.spStatusInactive ul li .spChange {
	opacity: 0.8;
}
.spElement.spElementInactive.spStatusInactive .spFieldset:first-of-type .spFieldsetHeading h5 {
	text-decoration: line-through;
}*/
.spStatusInactive .spElement.spElementInactive,
.spStatusInactive .spElementContainer,
.spStatusInactive .spTableElements,
.spHistory.spStatusInactive {
	/*noinspection CssInvalidFunction*/
	background-image: repeating-linear-gradient(-45deg, transparent 0 1em, var(--brighter-5) 1em 2em);
}
/*.spStatusInactive .spElement.spElementInactive .spFieldset > div,
.spStatusInactive .spElementContainer table.wmTableComplex thead tr th,
.spStatusInactive .spElementContainer table.wmTableComplex thead tr td,
.spStatusInactive .spElementContainer table.wmTableComplex tbody tr th,
.spStatusInactive .spElementContainer table.wmTableComplex tbody tr td,
.spStatusInactive .spElementContainer table.wmTableComplex tfoot tr th,
.spStatusInactive .spElementContainer table.wmTableComplex tfoot tr td {*/
.spStatusInactive .spElement.spElementInactive .spFieldset > div,
.spStatusInactive table.wmTableComplex thead tr th,
.spStatusInactive table.wmTableComplex thead tr td,
.spStatusInactive table.wmTableComplex tbody tr th,
.spStatusInactive table.wmTableComplex tbody tr td,
.spStatusInactive table.wmTableComplex tfoot tr th,
.spStatusInactive table.wmTableComplex tfoot tr td {
	background-color: var(--brighter-5);
}
.spHistory.spStatusInactive ul li .spChange {
	opacity: 0.8;
}
.spStatusInactive.spElement.spElementInactive .spFieldset:first-of-type .spFieldsetHeading h5 {
	text-decoration: line-through;
}

.spElement .spFieldset > .wmRowInner {
	display: flex;
}
.spElement .spFieldset > .wmRowInner > div {
	padding: 0.6em 0.7em;
	border: 1px solid var(--fieldset-border-color);
	border-bottom: none;
	border-right: none;

	float: none;
	/*width: auto;*/
	margin: 0;
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.spElement .spFieldset > .wmRowInner > div:first-child {
	border-left: 0;
}
.spElement .spFieldset > .wmRowInner > div.active {
	justify-content: start;
}
.spElement .spFieldset .spFieldsetHeading .spFieldsetButtons .wmButton {
	font-size: 1em;
	margin: 0 0 0 0.5em;
	display: inline;
}
.spElement.spElementInactive .spFieldset .spLabel {
	color: var(--main-text-color-light);
}
.spElement.spElementInactive .spFieldset .spValue a {
	font-weight: normal;
}
.spElement.spElementInactive .spFieldset > .wmRowInner.break1 > div {
	border-top-width: 3px;
	border-top-style: double;
}
.spElement .spFieldset .spFieldsetContent {
	padding: 1em 0.7em;
	border-top: 1px solid var(--fieldset-border-color);
}

/*.spForm,
#wmTopMessages,
.spContentMid {
	max-width: 80em;
}*/
.spElement.spElementActive {
	padding-bottom: 2em;
}
.spElement.spElementActive .spFieldset  {
	padding: 0;
	border: none;
}
.spElement .spFieldset > .wmRowInner > div.wmCol1 { flex-grow: 1; }
.spElement .spFieldset > .wmRowInner > div.wmCol2 { flex-grow: 2; }
.spElement .spFieldset > .wmRowInner > div.wmCol3 { flex-grow: 3; }
.spElement .spFieldset > .wmRowInner > div.wmCol4 { flex-grow: 4; }
.spElement .spFieldset > .wmRowInner > div.wmCol5 { flex-grow: 5; }
.spElement .spFieldset > .wmRowInner > div.wmCol6 { flex-grow: 6; }
.spElement .spFieldset > .wmRowInner > div.wmCol7 { flex-grow: 7; }
.spElement .spFieldset > .wmRowInner > div.wmCol8 { flex-grow: 8; }
.spElement .spFieldset > .wmRowInner > div.wmCol9 { flex-grow: 9; }
.spElement .spFieldset > .wmRowInner > div.wmCol10 { flex-grow: 10; }
.spElement .spFieldset > .wmRowInner > div.wmCol11 { flex-grow: 11; }
.spElement .spFieldset > .wmRowInner > div.wmCol12 { flex-grow: 12; }
.spElement .spFieldset > .wmRowInner > div.wmCol13 { flex-grow: 13; }
.spElement .spFieldset > .wmRowInner > div.wmCol14 { flex-grow: 14; }
.spElement .spFieldset > .wmRowInner > div.wmCol15 { flex-grow: 15; }
/*.spElement.spElementActive .spFieldset > .wmRowInner > div + div {
	border-left: 0;
}*/
.spElement.spElementActive .spFieldset label,
.spElement.spElementInactive .spFieldset .spLabel {
	font-size: 0.75em;
	margin: 0;
	line-height: 1.3;
}
.spElement.spElementActive .spFieldset label {
	color: var(--matter-color);
	font-weight: 500;
}
.spElement.spElementActive .spFieldset .wmFormGrid .wmRowInner label {
	display: block;
}
.spElement.spElementActive .spFieldset label::before,
.spElement.spElementActive .spFieldset label::after {
	display: none;
}
.spElement.spElementActive .spFieldset .wmFormSelectMultiCheckboxes label {
	font-size: 1em;
	margin-left: 0.1em;
}

.spElement.spElementActive .spFieldset input,
.spElement.spElementActive .spFieldset select,
.spElement.spElementActive .spFieldset textarea {
	border: none;
	background-color: transparent;
	padding: 0;
	margin: 0;
	border-radius: 0;
	line-height: 1.3;
}
.spElement.spElementActive .spFieldset .inputContainer {
	line-height: 1.3;
}
.spElement.spElementActive .spFieldset .inputContainer.multiLanguage {
	display: flex;
}
.spElement.spElementActive .spFieldset .inputContainer.multiLanguage .languageSelect {
	display: flex;
}
.spElement.spElementActive .spFieldset .inputContainer.multiLanguage .languageSelect > div {
	white-space: nowrap;
	padding: 0 0.2em;
	background-color: var(--fieldset-border-color);
	margin-right: 0.2em;
	cursor: pointer;
	display: flex;
	align-items: center;
}
.spElement.spElementActive .spFieldset .inputContainer.multiLanguage .languageSelect > div:first-child {
	border-top-left-radius: 0.2em;
	border-bottom-left-radius: 0.2em;
}
.spElement.spElementActive .spFieldset .inputContainer.multiLanguage .languageSelect > div:last-child {
	border-top-right-radius: 0.2em;
	border-bottom-right-radius: 0.2em;
}
.spElement.spElementActive .spFieldset .inputContainer.multiLanguage .languageSelect > div.active {
	font-weight: bold;
	cursor: default;
}
.spElement .spFieldset .spFieldsetHeading {
	/*border: 1px solid var(--brightest);*/
	border-bottom: none;
	padding: 1.1em 0.7em 1.3em 0.7em;
	overflow: hidden;
}
.spElement .spFieldset .spFieldsetHeading > div {
	float: right;
	white-space: nowrap;
}
.spElement .spFieldset .spFieldsetHeading > div:first-child {
	float: left;
}
.spElement .spFieldset .spFieldsetHeading h5 {
	font-size: 1.2em;
	margin: 0;
}
.spElement .spFieldset .spFieldsetHeading h6 {
	font-size: 1em;
	margin: 0;
}
.spElement .spFieldset .spFieldsetHeading .spFieldsetDescription {
	font-size: 0.9em;
	padding-top: 0.3em;
	white-space: normal;
}

/* Placeholder text styling. A group of selectors containing an invalid selector is invalid => use separate rules */
.spElement.spElementActive .spFieldset ::-webkit-input-placeholder { /* WebKit */
	color: #66799c;
	font-weight: 400;
}
.spElement.spElementActive .spFieldset :-moz-placeholder { /* Mozilla Firefox 4 to 18 */
	color: #66799c;
	font-weight: 400;
}
.spElement.spElementActive .spFieldset ::-moz-placeholder { /* Mozilla Firefox 19+ */
	color: #66799c;
	font-weight: 400;
}
.spElement.spElementActive .spFieldset :-ms-input-placeholder { /* Internet Explorer 10+ */
	color: #66799c;
	font-weight: 400;
}
.spElement.spElementActive .spFieldset .spPlaceholder:read-only {
	color: #66799c !important;
	font-weight: 400;
	/*padding: 0.591em 0;*/ /* 26px of label height / 22px / 2 */
	/*padding: 0.46875em 0;*/ /* 15px of label height / 16px / 2 */
	padding: 0.4875em 0; /* 15.6px of label height / 16px / 2 */
}

/*.spElement.spElementActive .spFieldset :required::-webkit-input-placeholder {
	font-weight: 500;
}
.spElement.spElementActive .spFieldset :required:-moz-placeholder {
	font-weight: 500;
}
.spElement.spElementActive .spFieldset :required::-moz-placeholder {
	font-weight: 500;
}
.spElement.spElementActive .spFieldset :required:-ms-input-placeholder {
	font-weight: 500;
}*/

/*.spElement.spElementActive .spFieldset select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath fill='#d4d9e3' d='M31.3 192h257.3c17.8 0 26.7 21.5 14.1 34.1L174.1 354.8c-7.8 7.8-20.5 7.8-28.3 0L17.2 226.1C4.6 213.5 13.5 192 31.3 192z'%3E%3C/path%3E%3C/svg%3E") !important;
	background-position: right 10px center;
	background-repeat: no-repeat;
	background-size: auto 80%;
	outline: none;
}
.spElement.spElementActive .spFieldset select::-ms-expand {
	display: none;
}
.spElement.spElementActive .spFieldset select:hover,
.spElement.spElementActive .spFieldset select:focus {
	background-image: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath fill='#1a2430' d='M31.3 192h257.3c17.8 0 26.7 21.5 14.1 34.1L174.1 354.8c-7.8 7.8-20.5 7.8-28.3 0L17.2 226.1C4.6 213.5 13.5 192 31.3 192z'%3E%3C/path%3E%3C/svg%3E") !important;
}*/

.spElement.spElementActive .spFieldset input[type="number"] {
	text-align: left;
}

.spElement.spElementActive .spFieldset input[type="number"]::-webkit-inner-spin-button,
.spElement.spElementActive .spFieldset input[type="number"]::-webkit-outer-spin-button,
.spElement.spElementActive .spFieldset input[type="date"]::-webkit-inner-spin-button,
.spElement.spElementActive .spFieldset input[type="date"]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.spElement.spElementActive .spFieldsetCompact {
	display: flex;
	margin-top: 0.7em;
}
.spElement.spElementActive .spFieldsetCompact .spFieldsetHeading {
	margin-top: 0;
	margin-right: 0.4em;
	border-top: 1px solid var(--fieldset-border-color);
	width: 12em;
}
.spElement.spElementActive .spFieldsetCompact .wmRowInner {
	flex: 1;
}


.spElement.spElementActive .spFieldsetGrid .spFieldsetHeading {
	padding-bottom: 0.3em;
}
.spElement.spElementActive .spFieldsetGrid .wmRowInner .wmCol16 {
	padding-left: 0;
	padding-right: 0;
}
/*.spElement.spElementActive .spFieldsetGrid > .wmRowInner > div {
	border-top: none;
}
.spElement.spElementActive .spFieldsetGrid .wmFormGrid .wmRowInner {
	padding: 0.6em 0.7em;
	border-bottom: 1px dotted var(--fieldset-border-color);
}
.spElement.spElementActive .spFieldsetGrid .wmFormGrid .wmRowInner:first-of-type {
	padding-top: 0;
	padding-bottom: 0;
	border-bottom-style: solid;
}
.spElement.spElementActive .spFieldsetGrid .wmFormGrid .wmRowInner:last-of-type {
	border-bottom: none;
}*/
.spElement.spElementActive .spFieldsetGrid > .wmRowInner > div {
	border-top: none;
}
.spElement.spElementActive .spFieldsetGrid .wmFormGrid .wmRowInner > div {
	padding: 0.6em 0.7em;
	border-top: 1px dotted var(--fieldset-border-color);
	border-right: 1px dotted var(--fieldset-border-color);
}
.spElement.spElementActive .spFieldsetGrid .wmFormGrid .wmRowInner.wmFormGridRowBegin > div {
	border-top: none;
}
.spElement.spElementActive .spFieldsetGrid .wmFormGrid .wmRowInner > div:last-child {
	border-right: none;
}
.spElement.spElementActive .spFieldsetGrid .wmFormGrid .wmRowInner.wmFormGridRowBegin {
	border-top: 1px solid var(--fieldset-border-color);
}
.spElement.spElementActive .spFieldsetGrid .wmFormGrid .wmRowInner.wmFormGridRowEnd {
	border-bottom: 1px solid var(--fieldset-border-color);
	margin-bottom: 1px;
}
.spElement.spElementActive .spFieldsetGrid .wmFormGrid .wmRowInner.wmFormGridButtonAddContainer > div {
	border-top: none;
}

.spElement.spElementActive .wmFormGrid .wmFormGridDeletable {
	width: 95%;
}
.spElement.spElementActive .wmFormGrid button {
	font-size: 1em;
}
.spElement.spElementActive .spFieldset .wmFormGrid .wmFormGridRow {
	position: relative; /* Required for delete and date-select buttons. */
}

.spElement.spElementActive .spFieldset .wmFormGrid .wmFormGridRow .wmRowInner.wmFormGridRow {
	display: flex;
}
.spElement.spElementActive .spFieldset .wmFormGrid .wmFormGridRow .wmRowInner.wmFormGridRow > div {
	float: none;
	flex: 1 1 auto;
}

/*.spElement.spElementActive .spFieldset .wmFormGrid button.wmFormGridRowDelete {
	position: absolute;
	top: 0.8em;
	right: 0.5em;
	margin: 0;
	padding: 0.2em;
	line-height: 1;
	width: 2em;
	height: 2em;
	text-align: center;
}
.spElement.spElementActive .spFieldset .wmFormGrid button.wmFormGridRowDelete::before {
	content: "\e820";
	margin: 0;
	!*noinspection CssNoGenericFontName*!
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
}*/
.spElement.spElementActive .spFieldset .wmFormGrid .wmFormGridRowButtons {
	position: absolute;
	top: 0.8em;
	right: 0.5em;
	margin: 0;
	padding: 0.2em;
	line-height: 1;
	text-align: center;
}
.spElement.spElementActive .spFieldset .wmFormGrid button.wmFormGridRowDelete::before {
	content: "\e820";
	margin: 0;
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
}
.spElement.spElementActive .spFieldset .wmFormGrid button.wmFormGridRowSortableDown::before {
	content: "\e830";
	margin: 0;
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
}
.spElement.spElementActive .spFieldset .wmFormGrid button.wmFormGridRowSortableUp {
	transform: rotate(180deg);
}
.spElement.spElementActive .spFieldset .wmFormGrid button.wmFormGridRowSortableUp::before {
	content: "\e830";
	margin: 0;
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
	transform: rotate(180deg);
}

/* Form input grids with TABLE layout (default). */
.spElement.spElementActive .spFieldsetGrid .wmFormGrid.wmFormGrid_table .wmRowInner.wmFormGridLabel > div {
	border: none;
	padding-top: 0;
	padding-bottom: 0.2em;
}
.spElement.spElementActive .spFieldsetGrid .wmFormGrid.wmFormGrid_table .wmRowInner.wmFormGridRowEnd {
	border-bottom: none;
	margin-bottom: 0;
}
.spElement.spElementActive .spFieldsetGrid .wmFormGrid.wmFormGrid_table .wmRowInner > div {
	border-right: 1px solid var(--fieldset-border-color);
}

/* Form input grids with ROWS layout (grids with many columns). */
/*#spBlockRows > .wmRowInner > div {
	padding: 0 0.7em 0.7em 0.7em;
}*/
.wmFormGrid_rows .wmFormGridRow {
	/*margin-bottom: 0.3em;
	padding-top: 1em;*/
}

/* Nested form input grids. */
.wmFormGridNested .wmFormGridRow {
	border-top: 1px solid #d4d9e3;
}
.wmFormGridNested .wmFormGridRow:first-of-type {
	border-top: none;
}
.wmFormGrid .wmFormGrid .wmRowInner {
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	border-top: 1px dotted #d4d9e3;
}
.wmFormGrid .wmFormGrid .wmRowInner:first-of-type {
	padding-top: 0;
	padding-bottom: 0;
	border-top: none;
}

/* Form grid for editing dict entry blocks. */
.spElement.spElementActive .spFieldset .wmFormGrid button::before {
	content: "\e818";
	margin-right: 0.3em;
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
}
.spElement.spElementActive .spFieldset .spFormBlockGridContainer {
	border-top: none;
	padding: 0 !important;
}
.spElement.spElementActive .spFieldset .spFormBlockGridContainer .wmFormGrid > .wmFormGridRow > .wmRowInner {
	display: flex;
}
.spElement.spElementActive .spFieldset .spFormBlockGridContainer .wmFormGrid > .wmFormGridRow > .wmRowInner > div {
	border-left: 1px solid var(--fieldset-border-color);
	padding: 0.6em 0.7em;
	flex: 1;
}
.spElement.spElementActive .spFieldset .spFormBlockGridContainer .wmFormGrid > .wmFormGridRow > .wmRowInner > div:first-child {
	border-left: none;
}
.spElement.spElementActive .spFieldset .spFormBlockGridContainer .wmFormGrid > .wmFormGridRow > .wmRowInner > div.wmFormGridButtonAddContainer {
	border-left: none;
}
.spElement.spElementActive .spFieldset .spFormBlockGridContainer .wmFormGrid > .wmFormGridRow > .wmRowInner > div.wmFormGridButtonAddContainer button {
	margin-top: 0.2em;
	font-size: 1em;
}

.spElement.spElementActive .spFieldset .recommended {
	background-color: #ffffcb;
}
.spElement.spElementActive .spFieldset .changed,
.spElement.spElementActive .spFieldset .changedForced {
	background-color: #e6ffdf;
}
.spElement.spElementActive .spFieldset .required,
.spElement.spElementActive .spFieldset .invalid {
	background-color: #ffe7e7;
}
.spElement.spElementActive .spFieldset .recommended .spPlaceholder,
.spElement.spElementActive .spFieldset .required .spPlaceholder {
	font-weight: 500;
}


table.spTableContacts tbody th.spContactPerson:first-child {
	text-align: right;
	padding-right: 0;
	border-right: none;
}
table.spTableContacts tbody th.spContactPerson a {
	display: block;
}
/*table.spTableContacts tbody th.spContactOrganization a {
	display: block;
	text-align: center;
}
table.spTableContacts tbody th.spContactPerson {
	width: 12em;
}*/
table.spTableContacts tbody th.spContactPerson:first-child a {
	font-weight: 400;
}
table.spTableContacts tbody th.spContactPerson:nth-child(2) {
	text-align: left;
	padding-left: 0;
	border-left: none;
}
table.spTableContacts tbody th.spContactPersonNone {
	text-align: center;
}

.spColorizeContainer {
	margin-bottom: 0.5em;
}
.spColorizeContainer h2 {
	font-size: 1.7em;
	color: var(--brightest);
	margin: 0.5em 1.5rem 0 0;
	display: inline-block;
}
.spColorizeContainer h2 a:link,
.spColorizeContainer h2 a:visited {
	color: var(--brightest) !important;
}
.spColorizeContainer h2 a:hover,
.spColorizeContainer h2 a:active {
	color: var(--brighter-7) !important;
}
.spColorizeContainer h2 small,
.spColorizeContainer h5 small {
	color: var(--brighter-7) !important;
}
.spColorizeContainer h2::before {
	color: var(--brighter-5);
	margin-right: 0.4em;
}
.spColorizeContainer h5 {
	display: inline-block;
	margin: 0 1.5rem 0 0;
}
.spColorizeContainer h5,
.spColorizeContainer h5 a:link,
.spColorizeContainer h5 a:visited {
	color: var(--brighter-7) !important;
}
.spColorizeContainer h5 a:hover,
.spColorizeContainer h5 a:active {
	color: var(--brighter-5) !important;
}
.spColorizeContainer h6 {
	font-size: 0.85em;
	/*margin-top: 0.5em;*/
	color: var(--brighter-5);
	text-transform: uppercase;
	display: inline-block;
}
.spColorizeContainer > .wmRow {
	margin-right: 0 !important;
}
.spColorizeContainer > .wmRow > div {
	padding: 1em 1.45em 0 1.45em;
}
.spColorizeContainer > .wmRow > div > div {
	margin-bottom: 1em;
}

/* Colorize MATTER */
.spColorizeMatterBg,
.spColorizeMatterBg:link,
.spColorizeMatterBg:visited,
.spColorizeMatter .spColorizeContainer {
	background-color: var(--matter-color) !important;
}
.spColorizeMatterFr,
.spColorizeMatterFr:link,
.spColorizeMatterFr:visited,
/*.spElement .spFieldset.spColorizeMatter h5,*/
.spElement.spElementActive .spFieldset.spColorizeMatter label {
	color: var(--matter-color);
}
.spColorizeMatterBgTr {
	/*background-color: rgba(64, 175, 248, 0.2) !important;*/
	background-color: var(--matter-color-mildest) !important;
}
body.wmService21 #wmNav ul li a#wmNav_matters:hover,
body.wmService21 #wmNav ul li.active a#wmNav_matters,
body.wmService21 #wmNav ul li.active a#wmNav_matters:hover {
	color: var(--matter-color);
	border-color: var(--matter-color);
}
.spColorizeMatterBo {
	border-color: var(--matter-color);
}
svg .spColorizeMatterBg {
	fill: var(--matter-color);
}
svg .spColorizeMatterBg.usage2 {
	fill: var(--matter-color-mild);
}

/* Colorize CONTACT */
.spColorizeContactBg,
.spColorizeContactBg:link,
.spColorizeContactBg:visited,
.spColorizeContact .spColorizeContainer {
	background-color: var(--contact-color) !important;
}
.spColorizeContactFr,
.spColorizeContactFr:link,
.spColorizeContactFr:visited,
/*.spElement .spFieldset.spColorizeContact h5,*/
.spElement.spElementActive .spFieldset.spColorizeContact label {
	color: var(--contact-color);
}
body.wmService21 a.spColorizeContactFr:hover,
body.wmService21 a.spColorizeContactFr:active {
	color: var(--contact-color-mild);
}
.spColorizeContactBgTr {
	/*background-color: rgba(136, 84, 208, 0.2) !important;*/
	background-color: var(--contact-color-mildest) !important;
}
body.wmService21 #wmNav ul li a#wmNav_contacts:hover,
body.wmService21 #wmNav ul li.active a#wmNav_contacts,
body.wmService21 #wmNav ul li.active a#wmNav_contacts:hover {
	color: var(--contact-color);
	border-color: var(--contact-color);
}
.spColorizeContactBo {
	border-color: var(--contact-color);
}
svg .spColorizeContactBg {
	fill: var(--contact-color);
}
svg .spColorizeContactBg.usage2 {
	fill: var(--contact-color-mild);
}

/* Colorize TASK */
/* alt: e1b112 */
.spColorizeTaskBg,
.spColorizeTaskBg:link,
.spColorizeTaskBg:visited,
.spColorizeTask .spColorizeContainer {
	background-color: var(--task-color) !important; /* #ccae62 */
}
.spColorizeTaskFr,
.spColorizeTaskFr:link,
.spColorizeTaskFr:visited,
/*.spElement .spFieldset.spColorizeTask h5,*/
.spElement.spElementActive .spFieldset.spColorizeTask label {
	color: var(--task-color);
}
body.wmService21 a.spColorizeTaskFr:hover,
body.wmService21 a.spColorizeTaskFr:active {
	color: var(--task-color-mild);
}
.spColorizeTaskBgTr {
	/*background-color: rgba(225, 177, 18, 0.2) !important;*/
	background-color: var(--task-color-mildest) !important;
}
.spColorizeTaskBo {
	border-color: var(--task-color);
}
body.wmService21 #wmNav ul li a#wmNav_tasks:hover,
body.wmService21 #wmNav ul li.active a#wmNav_tasks,
body.wmService21 #wmNav ul li.active a#wmNav_tasks:hover {
	color: var(--task-color);
	border-color: var(--task-color);
}
svg .spColorizeTaskBg {
	fill: var(--task-color);
}
svg .spColorizeTaskBg.usage2 {
	fill: var(--task-color-mild);
}

/* Colorize EVENT */
.spColorizeEventBg,
.spColorizeEventBg:link,
.spColorizeEventBg:visited,
.spColorizeEvent .spColorizeContainer {
	background-color: var(--event-color) !important;
}
.spColorizeEventFr,
.spColorizeEventFr:link,
.spColorizeEventFr:visited,
/*.spElement .spFieldset.spColorizeEvent h5,*/
.spElement.spElementActive .spFieldset.spColorizeEvent label {
	color: var(--event-color);
}
body.wmService21 a.spColorizeEventFr:hover,
body.wmService21 a.spColorizeEventFr:active {
	color: var(--event-color-mild);
}
.spColorizeEventBgTr {
	background-color: var(--event-color-mildest) !important;
	/*background-color: rgba(240,147,43, 0.2) !important;*/
	border-color: var(--event-color);
}
.spColorizeEventBo {
	border-color: var(--event-color);
}
body.wmService21 #wmNav ul li a#wmNav_calendar:hover,
body.wmService21 #wmNav ul li.active a#wmNav_calendar,
body.wmService21 #wmNav ul li.active a#wmNav_calendar:hover {
	color: var(--event-color);
	border-color: var(--event-color);
}
svg .spColorizeEventBg {
	fill: var(--event-color);
}
svg .spColorizeEventBg.usage2 {
	fill: var(--event-color-mild);
}

/* Colorize TERM */
.spColorizeTermBg,
.spColorizeTermBg:link,
.spColorizeTermBg:visited,
.spColorizeTerm .spColorizeContainer {
	background-color: var(--term-color) !important;
}
.spColorizeTermFr,
.spColorizeTermFr:link,
.spColorizeTermFr:visited,
/*.spElement .spFieldset.spColorizeTerm h5,*/
.spElement.spElementActive .spFieldset.spColorizeTerm label {
	color: var(--term-color);
}
body.wmService21 a.spColorizeTermFr:hover,
body.wmService21 a.spColorizeTermFr:active {
	color: var(--term-color-mild);
}
.spColorizeTermBgTr {
	/*background-color: rgba(192, 57, 43, 0.2) !important;*/
	background-color: var(--term-color-mildest) !important;
}
.spColorizeTermBo {
	border-color: var(--term-color);
}
body.wmService21 #wmNav ul li a#wmNav_terms:hover,
body.wmService21 #wmNav ul li.active a#wmNav_terms,
body.wmService21 #wmNav ul li.active a#wmNav_terms:hover {
	color: var(--term-color);
	border-color: var(--term-color);
}
svg .spColorizeTermBg {
	fill: var(--term-color);
}
svg .spColorizeTermBg.usage2 {
	fill: var(--term-color-mild);
}

/* Colorize DOCUMENT */
.spColorizeDocumentBg,
.spColorizeDocumentBg:link,
.spColorizeDocumentBg:visited,
.spColorizeDocument .spColorizeContainer {
	background-color: var(--document-color) !important; /*#ff5722*/
}
.spColorizeDocumentFr,
.spColorizeDocumentFr:link,
.spColorizeDocumentFr:visited,
/*.spElement .spFieldset.spColorizeDocument h5,*/
.spElement.spElementActive .spFieldset.spColorizeDocument label {
	color: var(--document-color);
}
body.wmService21 a.spColorizeDocumentFr:hover,
body.wmService21 a.spColorizeDocumentFr:active {
	color: var(--document-color-mild);
}
.spColorizeDocumentBgTr {
	/*background-color: rgba(18, 203, 196, 0.2) !important;*/
	background-color: var(--document-color-mildest) !important;
}
.spColorizeDocumentBo {
	border-color: var(--document-color);
}
body.wmService21 #wmNav ul li a#wmNav_inbox:hover,
body.wmService21 #wmNav ul li.active a#wmNav_inbox,
body.wmService21 #wmNav ul li.active a#wmNav_inbox:hover,
body.wmService21 #wmNav ul li a#wmNav_emails:hover,
body.wmService21 #wmNav ul li.active a#wmNav_emails,
body.wmService21 #wmNav ul li.active a#wmNav_emails:hover {
	color: var(--document-color);
	border-color: var(--document-color);
}
svg .spColorizeDocumentBg {
	fill: var(--document-color);
}
svg .spColorizeDocumentBg.usage2 {
	fill: var(--document-color-mild);
}

/* Colorize CHARGE */
.spColorizeChargeBg,
.spColorizeChargeBg:link,
.spColorizeChargeBg:visited,
.spColorizeCharge .spColorizeContainer {
	background-color: var(--charge-color) !important;
}
.spColorizeChargeFr,
.spColorizeChargeFr:link,
.spColorizeChargeFr:visited,
/*.spElement .spFieldset.spColorizeCharge h5,*/
.spElement.spElementActive .spFieldset.spColorizeCharge label {
	color: var(--charge-color);
}
body.wmService21 a.spColorizeChargeFr:hover,
body.wmService21 a.spColorizeChargeFr:active {
	color: var(--charge-color-mild);
}
.spColorizeChargeBo {
	border-color: var(--charge-color);
}
.spColorizeChargeBgTr {
	/*background-color: rgba(106, 176, 76, 0.2) !important;*/
	background-color: var(--charge-color-mildest) !important;
}
svg .spColorizeChargeBg {
	fill: var(--charge-color);
}
svg .spColorizeChargeBg.usage2 {
	fill: var(--charge-color-mild);
}

/* Colorize INVOICE */
.spColorizeInvoiceBg,
.spColorizeInvoiceBg:link,
.spColorizeInvoiceBg:visited,
.spColorizeInvoice .spColorizeContainer {
	background-color: var(--invoice-color) !important;
}
.spColorizeInvoiceFr,
.spColorizeInvoiceFr:link,
.spColorizeInvoiceFr:visited,
/*.spElement .spFieldset.spColorizeInvoice h5,*/
.spElement.spElementActive .spFieldset.spColorizeInvoice label {
	color: var(--invoice-color);
}
body.wmService21 a.spColorizeInvoiceFr:hover,
body.wmService21 a.spColorizeInvoiceFr:active {
	color: var(--invoice-color-mild);
}
.spColorizeInvoiceBo {
	border-color: var(--invoice-color);
}
.spColorizeInvoiceBgTr {
	/*background-color: rgba(22, 160, 133, 0.2) !important;*/
	background-color: var(--invoice-color-mildest) !important;
}
svg .spColorizeInvoiceBg {
	fill: var(--invoice-color);
}
svg .spColorizeInvoiceBg.usage2 {
	fill: var(--invoice-color-mild);
}

/* Colorize IPRIGHT #5758bb */
.spColorizeIPRightBg,
.spColorizeIPRightBg:link,
.spColorizeIPRightBg:visited,
.spColorizeIPRight .spColorizeContainer {
	background-color: var(--ipright-color) !important;
}
.spColorizeIPRightFr,
.spColorizeIPRightFr:link,
.spColorizeIPRightFr:visited,
/*.spElement .spFieldset.spColorizeIPRight h5,*/
.spElement.spElementActive .spFieldset.spColorizeIPRight label {
	color: var(--ipright-color);
}
body.wmService21 a.spColorizeIPRightFr:hover,
body.wmService21 a.spColorizeIPRightFr:active {
	color: var(--ipright-color-mild);
}
.spColorizeIPRightBo {
	border-color: var(--ipright-color) !important;
}
.spColorizeIPRightBgTr {
	/*background-color: rgba(87, 88, 187, 0.2) !important;*/
	background-color: var(--ipright-color-mildest) !important;
}
body.wmService21 #wmNav ul li a#wmNav_iprights:hover,
body.wmService21 #wmNav ul li.active a#wmNav_iprights,
body.wmService21 #wmNav ul li.active a#wmNav_iprights:hover {
	color: var(--ipright-color);
	border-color: var(--ipright-color);
}
svg .spColorizeIPRightBg {
	fill: var(--ipright-color);
}
svg .spColorizeIPRightBg.usage2 {
	fill: var(--ipright-color-mild);
}

/* Colorize COMMENT */
.spColorizeCommentBg,
.spColorizeCommentBg:link,
.spColorizeCommentBg:visited,
.spColorizeComment .spColorizeContainer {
	background-color: var(--comment-color) !important;
}
.spColorizeCommentFr,
.spColorizeCommentFr:link,
.spColorizeCommentFr:visited,
/*.spElement .spFieldset.spColorizeComment h5,*/
.spElement.spElementActive .spFieldset.spColorizeComment label {
	/*color: var(--comment-color);*/
	color: var(--darkest);
}
body.wmService21 a.spColorizeCommentFr:hover,
body.wmService21 a.spColorizeCommentFr:active {
	color: var(--comment-color-mild);
}
a.spColorizeCommentFr span {
	font-weight: 400;
}
.spColorizeCommentBgTr {
	/*background-color: rgba(64, 175, 248, 0.2) !important;*/
	background-color: var(--comment-color-mildest) !important;
}
.spColorizeCommentBgTr.commentSourceElementType53 {
	background-color: #ecdfff !important;
}
.spColorizeCommentBo {
	border-color: var(--comment-color);
}
svg .spColorizeCommentBg {
	fill: var(--comment-color);
}
svg .spColorizeCommentBg.usage2 {
	fill: var(--comment-color-mild);
}

/* Colorize ACCOUNTING */
.spColorizeAccountingBg,
.spColorizeAccountingBg:link,
.spColorizeAccountingBg:visited,
.spColorizeAccounting .spColorizeContainer {
	background-color: var(--accounting-color) !important;
}
.spColorizeAccountingFr,
.spColorizeAccountingFr:link,
.spColorizeAccountingFr:visited,
	/*.spElement .spFieldset.spColorizeAccounting h5,*/
.spElement.spElementActive .spFieldset.spColorizeAccounting label {
	color: var(--accounting-color);
}
body.wmService21 a.spColorizeAccountingFr:hover,
body.wmService21 a.spColorizeAccountingFr:active {
	color: var(--accounting-color-mild);
}
.spColorizeAccountingBgTr {
	background-color: var(--accounting-color-mildest) !important;
}
.spColorizeAccountingBo {
	border-color: var(--accounting-color);
}
svg .spColorizeAccountingBg {
	fill: var(--accounting-color);
}
svg .spColorizeAccountingBg.usage2 {
	fill: var(--accounting-color-mild);
}

/* Colorize ADMINISTRATION */
.spColorizeAdministrationBg,
.spColorizeAdministrationBg:link,
.spColorizeAdministrationBg:visited,
.spColorizeAdministration .spColorizeContainer {
	background-color: var(--administration-color);
}
/*.spElement .spFieldset.spColorizeAdministration h5,*/
.spElement.spElementActive .spFieldset.spColorizeAdministration label {
	color: var(--administration-color);
}
.spColorizeAdministrationBo {
}
.spColorizeAdministrationBgTr {
	/*background-color: rgba(75, 101, 132, 0.2) !important;*/
	background-color: var(--administration-color-mildest) !important;
}
svg .spColorizeAdministrationBg {
	fill: var(--administration-color);
}
svg .spColorizeAdministrationBg.usage2 {
	fill: var(--administration-color-mild);
}

.spColorize button:hover,
.spColorize button:active,
.spColorize .wmButton:hover,
.spColorize .wmButton:active {
	-moz-box-shadow: inset 0 0 5em 5em var(--brighter-3);
	-webkit-box-shadow: inset 0 0 5em 5em var(--brighter-3);
	box-shadow: inset 0 0 5em 5em var(--brighter-3);
}

.wmButton.spToggleOff::before,
.wmButton.spToggleOn::before {
	display: inline-block;
	margin-right: 0.2em;
	font-size: 0.85em;
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
	line-height: 1;
}
.wmButton.spToggleOff::before {
	content: "\e843";
}
.wmButton.spToggleOn::before {
	content: "\e842";
}


.spColorizeContactFr > span > small {
	font-weight: 400;
	color: var(--main-text-color);
}
.spColorizeContactFr > span > span.sub {
	font-weight: 400;
	opacity: 0.8;
}

select.wmFormInput_country + input {
	margin-top: 0;
}

.wmSpButtonSmall {
	display: inline-block;
	background-color: var(--matter-color);
	font-size: 0.7em;
	margin-left: 0.4em;
	line-height: 1.5em;
	border-radius: 0.2em;
	text-decoration: none;
}
.wmSpButtonSmall::before {
	padding: 0 0.3em;
	font-style: normal;
	font-weight: normal;
	color: var(--brightest);
	margin: 0 !important;
}
.wmSpButtonSmall::after {
	content: "" !important;
	margin: 0 !important;
	padding: 0 !important;
}
.wmSpButtonSmall:hover {
	background-color: var(--matter-color-mild);
}

/*.wmSpQuickAdd::before {
	font-family: "Webmini";
	content: "\e823";
}
.wmSpExternal::before {
	font-family: "Wmpw";
	content: "\e80e";
}*/


.wmBoardMonoIcon > div:first-child {
	background-color: var(--matter-color);
}



/*h5 + .wmTableComplex thead tr th {
	padding-top: 0;
}*/
table.wmTableComplex thead tr th {
	background-color: var(--fieldset-bg-color);
}
table.wmTableComplex tr.spTableControl th {
	color: var(--main-text-color-light);
	padding: 0.7em 1.25em 0.3em 1.25em;
	font-size: 0.8em;
	border-top: none;
}
table.wmTableComplex thead tr.spTableHeading th {
	font-size: 1em;
	padding: 1.3em 1em 0.8em 1em;
	overflow: hidden;
}
table.wmTableComplex thead tr.spTableHeading th div {
	float: right;
	white-space: nowrap;
}
table.wmTableComplex thead tr.spTableHeading th div:first-child {
	float: left;
}
table.wmTableComplex thead tr.spTableHeading th h5 {
	font-size: 1.2em;
	margin: 0;
}
table.wmTableComplex thead tr.spTableHeading th h6 {
	font-size: 1em;
	margin: 0;
}
table.wmTableComplex thead tr.spTableHeading th h5::before {
	display: none;
}
table.wmTableComplex thead tr.spTableHeading th h5 > small {
	color: var(--main-text-color-light);
}
/*table.wmTableComplex thead tr.spTableHeading th div:last-child a.wmButton {
	font-size: 1em;
}*/
table.wmTableComplex thead tr.spTableHeading th div.buttons div {
	margin-left: 0.5em;
}
table.wmTableComplex thead tr.spTableHeading th div.buttons div a.wmButton {
	font-size: 1em;
}
table.wmTableComplex thead tr.spTableHeading .spSortOnly {
	font-size: 0.8em;
	margin-right: 3em;
}
/*table.wmTableComplex tbody,
table.wmTableComplex tbody tr {
	background-color: var(--fieldset-bg-color);
}*/
table.wmTableComplex tbody tr th,
table.wmTableComplex tbody tr td {
	background-color: var(--fieldset-bg-color);
	border: 1px solid var(--fieldset-border-color);
	border-bottom: none;
	border-right: none;
	vertical-align: middle;
	overflow-wrap: anywhere;
}
table.wmTableComplex tbody tr th:first-child,
table.wmTableComplex tbody tr td:first-child {
	border-left: none;
}
table.wmTableComplex {
	border-bottom: 1px solid var(--fieldset-border-color);
}

table.wmTableComplex tbody tr td.spCellLc2 {
	border-left: none;
	padding-left: 0;
	color: var(--main-text-color-light);
}
/*table.wmTableComplex tbody tr td.spCellLc2 div {
	background-color: #d4d9e3;
	border-radius: 50%;
	width: 3em;
	height: 3em;
	font-size: 0.8em;
	text-align: center;
	line-height: 3em;
}*/
table.wmTableComplex tbody tr td.spCellLc2 div::before {
	content: "\e805";
	margin-right: 0.6em;
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
}

table.wmTableComplex tbody tr th,
table.wmTableComplex tbody tr td {
	border-left: none;
	border-right: none;
}

table.wmTableComplex tbody tr.rowColored th,
table.wmTableComplex tbody tr.rowColored td {
	background-color: transparent;
}
table.wmTableComplex tbody tr.rowColored {
	border-left-style: solid !important;
	border-left-width: 2px;
}
table.wmTableComplex tbody tr.rowColored th:first-child,
table.wmTableComplex tbody tr.rowColored td:first-child {
	padding-left: calc(1em - 2px) !important;
}

/*table.wmTableComplex tbody tr.spDeprecated,
table.wmTableComplex tbody tr.spReduced {
	background-color: var(--fieldset-bg-color);
}*/
table.wmTableComplex tbody tr.spDeprecated th,
table.wmTableComplex tbody tr.spDeprecated td,
table.wmTableComplex tbody tr.spReduced th,
table.wmTableComplex tbody tr.spReduced td {
	opacity: 0.5;
}
table.wmTableComplex tbody tr.spDeprecated th:first-of-type > :first-child,
.spDeprecated {
	text-decoration: line-through;
}

.spReason > span {
	text-decoration: underline;
}
.spReason::before {
	margin-right: 0.3em;
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
	content: "\e84a";
}

table.wmTableComplex tfoot {
	border-top: 3px double var(--fieldset-border-color);
}
table.wmTableComplex tfoot tr th,
table.wmTableComplex tfoot tr td {
	background-color: var(--fieldset-bg-color);
	border: 1px solid var(--fieldset-border-color);
	border-left: none;
	border-bottom: none;
	border-right: none;
	vertical-align: middle;
}

table.spTableElements {
	margin-top: 0.7em;
}

table.wmTableComplex .filtersExplanation > span {
	font-size: 0.85em;
	padding: 0.1em 0.4em;
	margin: 0 0.1em;
	border-radius: 0.2em;
	background-color: var(--darker-0);
}
table.wmTableComplex .filtersExplanation > span > small {
	color: var(--main-text-color-light);
}

/* Elements tables on small screens. */
@media only screen and (max-width: 50em) {
	table.spTableElements,
	table.spTableElements thead,
	table.spTableElements tbody,
	table.spTableElements tfoot,
	table.spTableElements tr,
	table.spTableElements th,
	table.spTableElements td {
		display: block;
		max-width: none !important;
		text-align: center !important;
	}
	/*table.spTableElements tr {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: stretch;
		align-content: flex-start;
	}
	table.spTableElements tr th,
	table.spTableElements tr td {
		flex-grow: 1;
	}*/
	table.spTableElements tbody tr.rowDefault {
		margin-top: 0.7em;
	}
	table.spTableElements tbody tr th,
	table.spTableElements tbody tr td,
	table.spTableElements tbody tr.rowOwn td {
		border-top: 1px solid #f5f5f5 !important;
	}
	table.spTableElements tbody tr.rowOwn td {
		padding-top: 0.8em !important;
	}
	table.spTableElements tbody tr .spTableSelect:empty {
		display: none;
	}
}

table.spTableGroups thead tr th {
	background: transparent !important;
	border: none !important;
}
table.spTableGroups thead tr th h5 {
	color: #1a2430 !important;
}
table.spTableGroups tbody tr.spTableSectionA,
table.spTableGroups tbody tr.spTableSectionA td {
	background: transparent !important;
}
table.spTableGroups tbody tr.spTableSectionA:first-child td {
	border-top: none;
	padding: 0.2em 0 !important;
}
table.spTableGroups tbody tr.spTableSectionB th {
	border-top: none;
}
table.spTableGroups tbody tr.spTableSectionB th h6 {
	font-size: 1.1em;
}

.spFilterMain {
	margin-top: 1em;
}
.spFilterMain .controlCenter {
	display: flex;
	gap: 0.3em;
}
.spFilterMain .controlCenter > a,
.spFilterMain .controlCenter > div {
	padding: 0.5em;
	background: var(--fieldset-bg-color);
	border-bottom: 1px solid var(--fieldset-border-color);
}
.spFilterMain .controlCenter > div {
	color: var(--main-text-color-light);
}
.spFilterMain .controlCenter .left {
	padding-left: 1em;
	border-top-left-radius: 2em;
	border-bottom-left-radius: 2em;
}
.spFilterMain .controlCenter .right {
	padding-right: 1em;
	border-top-right-radius: 2em;
	border-bottom-right-radius: 2em;
}
.spFilterMain.calendar {
	margin-bottom: 0.7em;
}
.spFilterMain .controlCenter .active {
	font-weight: 500;
}

.spCellNb {
	white-space: nowrap;
}
.spAlignR {
	text-align: right;
}

.spMoneyAligned {
	text-align: right;
}
.spValue .spMoneyAligned {
	display: block;
}
.spMoneyAmount.positive {
	color: var(--cue-success-color);
}
.spMoneyAmount.negative {
	color: var(--cue-alert-color);
}

.spTermToday {
	font-weight: 500;
}
.spTermOnHoliday {
	font-size: inherit;
}
.spTermOnHoliday::before {
	margin-left: 0.2em;
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
	content: "\e84a";
}

table.wmTableComplex tbody tr td small {
	font-weight: 400;
}

table.wmTableComplex tbody tr.rowOwn td {
	border-top: none;
}

table.wmTableComplex tbody tr.rowOwn table {
	width: 100%;
	font-size: 0.95em;
}
table.wmTableComplex tbody tr.rowOwn table tr > td {
	padding: 0.4em;
	border-top: 1px dotted var(--fieldset-border-color);
}
table.wmTableComplex tbody tr.rowOwn table tr:first-child > td {
	padding-top: 0;
	border-top: none;
}
table.wmTableComplex tbody tr.rowOwn table tr > :first-child {
	padding-left: 0;
}
table.wmTableComplex tbody tr.rowOwn table tr > :last-child {
	padding-right: 0;
}


.spEditingMsg {
	margin-top: 0.7em;
	padding: 0.2em 0.7em;
	background-color: var(--cue-alert-color);
	color: var(--brightest);
	text-align: center;
	/*border-radius: 0.2em;*/
	border-top-left-radius: 0.4em;
	border-top-right-radius: 0.4em;
}
.spEditingMsg.editingSelf {
	background-color: var(--cue-success-color);
}

.spElementsListingMinor {
	margin-top: 0.7em;
}

.spSubtasksList .current {
	border-left: 0.2em solid var(--task-color); /*var(--cue-success-color)*/
}
.spSubtasksList .current th,
.spSubtasksList .current td {
	background-color: #ffffef;
}
.spSubtasksList .assignees {
	font-size: 0.85em;
}
.spSubtasksList .links {
	overflow: hidden;
}
.spSubtasksList .links > div {
	float: left;
	width: 33%;
	border-style: solid;
	border-width: 1px;
	padding: 0.3em;
	border-radius: 0.2em;
	margin-right: 0.3em;
	background-color: var(--fieldset-bg-color);
}

/*.spSubtasksList .spMessages {
	float: left;
	overflow: hidden;
}*/
.spMessages .message {
	/*float: left;
	border: 1px solid var(--fieldset-border-color);
	border-radius: 0.2em;
	padding: 0.5em;
	margin: 0 0.3em 0.3em 0;
	white-space: nowrap;*/
	padding: 0.1em 0;
	display: block;
}
.spMessages a.message {
	color: var(--main-text-color);
	font-weight: 400;
}
.message .content {
	font-style: italic;
}
.spMessages .message .content {
	display: inline-block;
}
.spMessages .message .meta {
	display: inline-block;
	font-size: 0.85em;
	color: var(--main-text-color-light);
	margin-left: 0.5em;
}
.spMessages .message.form .content {
	width: calc(100% - 4em);
	position: relative;
}
.spMessages .message.form .content input {
	padding: 0.1em 0.2em 0.1em 1.8em;
	margin: 0;
	border: none !important;
	border-radius: 0.2em;
	background-color: var(--main-bg-color) !important;
	width: 100%;
}
.spMessages .message.form .content .icon {
	position: absolute;
	left: 0.5em;
	top: 50%;
	margin: -0.5em 0 0 0;
	line-height: 1em;
	color: var(--main-text-color-light);
}

.spCommentsCompact {
	margin-top: 0.7em;
}
.spCommentsCompact > div {
	margin-top: 0.3em;
	padding: 0.3em 1em 0.3em 0;
	border-bottom: 1px solid var(--fieldset-border-color);
}
.spCommentsCompact > div > div {
	display: inline-block;
	margin-left: 1em;
}
.spCommentsCompact .content a.spColorizeCommentFr:link span,
.spCommentsCompact .content a.spColorizeCommentFr:visited span {
	color: #333;
}
.spCommentsCompact .content a.spColorizeCommentFr:hover span,
.spCommentsCompact .content a.spColorizeCommentFr:active span {
	color: var(--main-text-color-light);
}
.spCommentsCompact .content::before,
.spHistory .spChange.comment .content::before {
	color: #9f6000;
	margin-right: 0.5em;
}

.spChatMessagesHeader {
	overflow: hidden;
	margin: 0.7em 0;
}
.spChatMessagesHeader > h5 {
	float: left;
}
.spChatMessagesHeader > a.wmButton {
	display: block;
	float: right;
	font-size: 1em;
}


.wmSort {
	box-sizing: content-box;
	line-height: 1;
	padding: 1px 2px 0 1px !important;
	margin: 1px 1px 1px 3px;
}
.wmSort.wmSortActive {
	margin: 0 0 0 2px;
}
.wmSort::before {
	font-size: inherit;
}

.spFilterContainer {
	/*background-color: var(--fieldset-bg-color);*/
	background-color: rgba(132, 146, 175, 0.1);
	margin-top: -0.5em;
	margin-bottom: 0.5em;
}
.spFilterContainer > .wmRow > div {
    padding: 0.6em 0 0.2em 1em;
}
#spFilter {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
#spFilter > label {
	padding: 0.4rem;
	margin-right: 2rem;
	/*border-left: 1px solid #dde2e9;*/
	font-size: 0.9em;
	font-weight: 400;
	color: var(--main-text-color-light);
	display: flex;
	align-items: center;
}
#spFilter > label:last-child {
	margin-right: 0;
}
/*#spFilter > label:hover {
	background-color: rgba(132, 146, 175, 0.2);
}*/
#spFilter > label > span {
	margin-right: 0.5em;
	line-height: normal;
	display: inline-block;
}
#spFilter > label input,
#spFilter > label select {
	background-color: var(--fieldset-bg-color) !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	line-height: normal;
}
#spFilter > label.filterMain > span > span::before {
	margin: 0 0 0 0.2em;
}

.spResponseWithdraw {
	display: inline-block;
	font-size: 0.85em;
	background-color: var(--darker-0);
	line-height: 1.3;
	padding: 0.2em 0.4em;
	border-radius: 0.3em;
	word-break: normal;
	overflow-wrap: normal;
	margin-top: 0.3em;
}


.spIpMatterOverview {
	background-color: var(--fieldset-bg-color);
	margin-top: 1.2em;
	border-top: 0.1875rem dotted var(--fieldset-border-color);
	border-bottom: 1px solid var(--fieldset-border-color);
	display: flex;
}
.spIpMatterOverview .dateColumn {
	padding: 0.3em;
	margin-top: -0.99375rem;
	border-right: 1px solid var(--fieldset-border-color);
}
.spIpMatterOverview .dateColumn:last-child {
	border-right: none;
}
.spIpMatterOverview .dateColumn .date {
	display: inline-block;
	background-color: var(--matter-color);
	color: var(--brightest);
	border-radius: 0.3em;
	line-height: 1.5rem;
	height: 1.5rem;
	font-weight: 500;
	padding: 0 0.5em;
}
.spIpMatterOverview .reasons {
	overflow: hidden;
}
.spIpMatterOverview .reasons .reason {
	float: left;
	padding: 0.3em 0.5em;
}
.spIpMatterOverview .reasons .reason .reasonHeadline {
	font-size: 0.75em;
	color: var(--main-text-color-light);
	padding-left: 0.1rem;
}
.spIpMatterOverview .matters {
	overflow: hidden;
}
.spIpMatterOverview .matters .matter {
	float: left;
	background-color: var(--darker-0);
	padding: 0.2em 0.3em;
	font-size: 1.2em;
	margin: 0.1em;
	border: 1px solid var(--darker-0);
}
.spIpMatterOverview .matters .matter.self {
	font-weight: 500;
	background: transparent;
}
.spIpMatterOverview .matters .matter small.spRef {
	color: var(--main-text-color-light);
}

table.spEllipsis {
	background-color: var(--brightest);
}
table.spEllipsis,
table.spEllipsis thead,
table.spEllipsis tbody,
table.spEllipsis tr,
table.spEllipsis th,
table.spEllipsis td {
	display: block;
}
table.spEllipsis thead tr,
table.spEllipsis tbody tr {
	overflow: hidden;
}
table.spEllipsis thead tr:last-child th,
table.spEllipsis tbody tr th,
table.spEllipsis tbody tr td {
	float: left;
}

table.spCalendar thead tr:last-child th,
table.spCalendar tbody tr td {
	padding: 0.4em 1em;
}
table.spCalendar tbody tr td {
	min-height: 10em;
	vertical-align: top;
}
table.spCalendar tbody tr td > div {
	font-size: 0.9em;
	line-height: 1.4;
}
table.spCalendar tbody tr td .spCalendarDayLabel {
	font-size: 1em;
	margin-bottom: 0.3em;
	line-height: 1.6;
}
table.spCalendar tbody tr td.spCalendarInactive {
	background-color: #f5f7f9;
}
table.spCalendar tbody tr td.spCalendarToday {
	background-color: #ebf5fb;
}
table.spCalendar tbody tr td.spCalendarToday .spCalendarDayLabel > span {
	font-weight: 500;
	background-color: var(--matter-color);
	color: var(--brightest);
	border-radius: 1em;
	padding-left: 0.5em;
	padding-right: 0.5em;
	display: inline-block;
}
table.spCalendar tbody tr td.spCalendarToday .spCalendarDayLabel > span * {
	color: inherit;
}

.spCalendarItemDay {
	color: var(--brightest);
	border-radius: 3px;
	margin-top: 2px;
}
.spCalendarItemDay a {
	color: inherit !important;
	padding: 0 0.4em;
	font-weight: 400;
}
.spCalendarItemTime  {
	font-weight: 500;
}
.spCalendarItemTime > span:first-child {
	display: inline-block;
	width: .6em;
	height: .6em;
	border-radius: 50%;
}
.spCalendarItemTime a {
	color: #0e1a35 !important;
	font-weight: 400;
}
.spCalendarRecurring a::before,
.spRecurring::before {
	font-size: 0.8em;
	margin-right: 0.3em;
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
	content: "\e825";
}

table.spCalendar .spCalendarWeeks tr td > div {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
table.spCalendar .spCalendarWeeks tr td > div a {
	display: inline;
}
table.spCalendar .spCalendarWeek tr td {
	min-height: 20em;
}
table.spCalendar .spCalendarWeek tr td > div.spCalendarItemDay a {
	display: block;
}
table.spCalendar .spCalendarDay tr td {
	min-height: 30em;
}
table.spCalendar .spCalendarDay tr td h6 {
	margin: 0.5em 0;
}

.spCalendar .spCalendarDay tr td {
	width: 100%;
	border: none;
}
.spCalendarDayLayout {
}
.spCalendarDayLayout .spCalendarDayEvents {
	position: relative;
	left: 4em;
	/*noinspection CssOverwrittenProperties*/
	width: 95%;
	/*noinspection CssOverwrittenProperties*/
	width: calc(100% - 4em);
}
.spCalendarDayLayout .spCalendarDayEvents > div {
	position: relative;
	padding: 0 1em 0 0;
}
.spCalendarDayLayoutDay {
	padding-bottom: 1em;
}
.spCalendarDayLayoutDay .spCalendarDayEvents {
	overflow: hidden;
}
.spCalendarDayLayoutDay .spCalendarDayEvents > div {
	float: left;
	padding-right: 1em;
}
.spCalendarDayLayoutDay .spCalendarDayEvents > div:last-child {
	padding-right: 0;
}

.spCalendarDayLayoutTime {
	width: 100%;
	position: relative;
}
.spCalendarDayLayoutTime .spCalendarDayHours {
	position: absolute;
	width: 100%;
	height: 100%;
}
.spCalendarDayLayoutTime .spCalendarDayHours .spCalendarDayHour {
	position: absolute;
	left: 0;
	width: 100%;
	border-top: 1px solid var(--fieldset-border-color);
}
.spCalendarDayLayoutTime .spCalendarDayHours .spCalendarDayHour > div {
	position: absolute;
	left: 0;
	top: -1.5em;
	line-height: 2em;
	width: 4em;
	background-color: var(--brightest);
	padding: 0.5em 0.5em 0.5em 0;
	/*color: var(--main-text-color-light);*/
	height: 2em;
}
.spCalendarDayLayoutTime .spCalendarDayEvents > div h6 {
	margin: 0 !important;
	line-height: 2em;
}
.spCalendarDayLayoutTime .spCalendarDayEvents > div .spCalendarItemTime {
	position: absolute;
	padding: 0.5em;
	border-left-style: solid;
	border-left-width: 0.3em;
	left: 0;
	right: 1em;
}
.spCalendarDayLayoutTime .spCalendarDayEvents > div:last-child .spCalendarItemTime {
	right: 0;
}

table.spCalendar.rows thead tr:last-child th {
	text-align: center;
	line-height: 1.2;
	padding-left: 0;
	padding-right: 0;
}
table.spCalendar.rows thead tr:last-child th > span {
	font-size: 0.9em;
	display: block;
}
table.spCalendar.rows thead tr:last-child th > span:first-child {
	font-size: 0.8em;
}
table.spCalendar.rows tbody tr th {
	font-size: 0.9em;
}
table.spCalendar.rows tbody tr td {
	padding-left: 0;
	padding-right: 0;
	border-left: 1px solid var(--brightest);
	border-right: 1px solid var(--brightest);
	min-height: 3.6em;
}
table.spCalendar.rows tbody tr td.weekend {
	background-color: #f6f7fa;
}
table.spCalendar.rows thead tr th.today {
	background-color: var(--matter-color);
	color: var(--brightest);
	font-weight: 500;
	border-top-left-radius: 0.3em;
	border-top-right-radius: 0.3em;
}
/*table.spCalendar.rows tbody tr td.today {
	border-left: 2px dotted var(--matter-color);
	border-right: 2px dotted var(--matter-color);
}*/
table.spCalendar.rows tbody tr td.item {
	padding: 0.3em 0;
}
table.spCalendar.rows tbody tr td.item > div {
	padding: 0.3em;
	line-height: 1.2;
	text-align: left;
}
table.spCalendar.rows tbody tr td.startHere > div {
	border-top-left-radius: 0.3em;
	border-bottom-left-radius: 0.3em;
}
table.spCalendar.rows tbody tr td.endHere > div {
	border-top-right-radius: 0.3em;
	border-bottom-right-radius: 0.3em;
}
table.spCalendar.rows tbody tr td.startBefore > div {
	border-left: 3px dotted var(--brightest);
}
table.spCalendar.rows tbody tr td.endAfter > div {
	border-right: 3px dotted var(--brightest);
}
table.spCalendar.rows tbody tr td.item > div.allDayNo {
	border-width: 0.1em;
	border-style: solid;
	padding: 0.2em; /* padding = 0.3em - 0.1em border width => padding 0.2em */
}
table.spCalendar.rows tbody tr td.item > div div,
table.spCalendar.rows tbody tr td.item > div div a,
table.spCalendar.rows tbody tr td.item > div div a span {
	display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

table.spCalendar.rows.year tbody tr th:first-child {
	text-align: center;
	padding: 0.4em 0.6em;
	vertical-align: middle;
}
table.spCalendar.rows.year tbody tr th:first-child div.weeks {
	font-size: 0.85em;
	line-height: 1.2;
}
table.spCalendar.rows.year tbody tr td div {
	text-align: center;
}
table.spCalendar.rows.year tbody tr.today th:first-child {
	border-left: 3px solid var(--matter-color);
	color: var(--matter-color);
}
table.spCalendar.rows.year tbody tr td.today {
	border: 3px solid var(--matter-color);
	color: var(--matter-color);
	font-weight: bold;
}
table.spCalendar.rows.year tbody tr td.monthFirst {
	border-left: 3px solid var(--fieldset-border-color);
}
table.spCalendar.rows.year tbody tr td.monthFirst div {
	font-weight: 500;
}
table.spCalendar.rows.year tbody tr td.noEvents div {
	color: var(--main-text-color-light);
}
table.spCalendar.rows.year tbody tr td .items {
	min-height: 1.2em;
}
table.spCalendar.rows.year tbody tr td .items .item {
	display: inline-block;
	width: 0.8em;
	height: 0.8em;
	margin: 0.1em;
	line-height: 1;
	border-radius: 0.2em;
	border: 1px solid rgba(0, 0, 0, 0.15);
}
table.spCalendar.rows.year.clipped {
	table-layout: fixed;
}
table.spCalendar.rows.year.clipped tbody tr.rowFirst td {
	padding-bottom: 0.1em;
	position: relative;
}
table.spCalendar.rows.year.clipped tbody tr.rowFirst td.today {
	background-color: var(--matter-color);
	border-top-color: var(--matter-color);
}
table.spCalendar.rows.year.clipped tbody tr.rowFirst td.today div {
	color: var(--brightest);
	font-weight: 500;
}
table.spCalendar.rows.year.clipped tbody tr.rowFirst td div.more {
	font-size: 0.9em;
	font-weight: 500;
	position: absolute;
	right: 0;
	top: 0;
}
table.spCalendar.rows.year.clipped tbody tr.rowSecond td {
	border-top: none;
	padding-top: 0;
	padding-bottom: 0.2em;
	height: 1.62em;
}
table.spCalendar.rows.year.clipped tbody tr.rowSecond td .item {
	display: block;
	width: 100%;
	border-radius: 0.2em;
	padding: 0.1em 0.2em;
	text-align: left;
}
table.spCalendar.rows.year.clipped tbody tr.rowSecond td .item a {
	display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
table.spCalendar.rows.year.clipped tbody tr.rowSecond td.allDayNo .item {
	border-width: 0.1em;
	border-style: solid;
	padding: 0 0.2em;
}

table.spCalendar tbody.spCalendarDashboard .spCalendarItem td {
	border: none;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}
table.spCalendar tbody.spCalendarDashboard tr:last-child td {
	padding-bottom: 1em;
}
table.spCalendar tbody.spCalendarDashboard .spCalendarDashboardSeparator td {
	border-top: none;
	padding-top: 0.4em;
}

.spCalendarBarContainer {
	padding: 0 !important;
}
.spCalendarBar {
	box-sizing: content-box;
	position: relative;
	height: 3em;
	border-bottom: 1px solid var(--fieldset-border-color);
	background-color: rgba(128, 128, 128, 0.1);
}
.spCalendarBar a {
	display: block;
	position: absolute;
	top: 0;
	height: 3em;
}
.spCalendarBar .spColorize0Bg { /* TODO Fix styleDayItem() method! */
	background-color: rgba(247, 96, 60, 0.4);
}


.spStripes {
	/*noinspection CssInvalidFunction*/
	background-image: repeating-linear-gradient(-45deg, transparent 0 1em, var(--brighter-3) 1em 2em);
}
.spStripes.spBgDark {
	/*noinspection CssInvalidFunction*/
	background-image: repeating-linear-gradient(-45deg, transparent 0 1em, var(--darker-2) 1em 2em);
}

.spBgBright,
.spBgBright a:link,
.spBgBright a:visited {
	color: rgba(26, 36, 48, 0.9) !important;
}
.spBgBright small,
.spBgBright a:hover,
.spBgBright a:active {
	color: var(--darker-6) !important;
}
.spBgDark,
.spBgDark a:link,
.spBgDark a:visited {
	color: var(--brightest) !important;
}
.spBgDark small,
.spBgDark a:hover,
.spBgDark a:active {
	color: var(--brighter-6) !important;
}

table.spTablePulse tbody tr th:first-child {
	width: 7em;
	text-align: right;
	font-size: 0.9em;
}
table.spTablePulse tbody tr td .spElementType {
	margin-right: 0.5em;
}
table.spTableGroups.spTablePulse tbody tr.spTableSectionA td {
	padding: 0;
}
table.spTableGroups.spTablePulse tbody tr.spTableSectionB,
table.spTableGroups.spTablePulse tbody tr.spTableSectionB th {
	background: transparent !important;
	text-align: left;
	font-size: 1em;
}
table.spTableGroups.spTablePulse tbody tr.spTableSectionB th h6 {
	margin: 0;
	font-size: 1em;
}

.spElementType {
	display: inline-block;
	text-align: center;
	width: 8em;
	color: var(--brightest);
	border-radius: 3px;
	font-weight: 500;
}

.spRef,
.spCtr {
	/*font-feature-settings: "tnum";*/
	font-family: "Roboto Mono", monospace;
}
.spRef .spS { /* Separator */
	display: inline-block;
	width: 0.2em;
}

.spInputContainer.spScript label::after,
.spElementInactive .spFieldset .spScript .spLabel::after {
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
	content: "\e85d";
	display: inline-block !important;
	margin-left: 0.3em;
	font-size: 1.2em;
	line-height: 1;
	vertical-align: middle;
}
.spInputContainer.spScript textarea,
.spElementInactive .spFieldset .spScript .spValue {
	font-family: "Roboto Mono", monospace;
}

.spCtr {
	font-size: 0.85em;
	border: 2px solid #ccc;
	border-left-width: 0.4em;
	border-radius: 0.3em;
	padding: 0 0.1em;
	background-color: var(--brighter-5);
}
a:link .spCtr,
a:visited .spCtr {
	color: #555;
}
a:hover .spCtr,
a:active .spCtr {
	color: #888;
}
#spPanelAltAction a:link .spCtr,
#spPanelAltAction a:visited .spCtr {
	color: var(--brighter-7);
}
#spPanelAltAction a:hover .spCtr,
#spPanelAltAction a:active .spCtr {
	color: var(--brightest);
}
.spFieldsetHeading .spCtr {
	color: var(--main-text-color);
}
/*.spCtr > span {
	margin-right: 0.2em;
	padding-right: 2px;
	display: inline-block;
}
.spCtr > span.i1::before {
	content: "\25B2";
}
.spCtr > span.i2::before {
	content: "\25B6";
}
.spCtr > span.i3::before {
	content: "\25BC";
}
.spCtr > span.i4::before {
	content: "\25C0";
}
.spCtr > span.i5::before {
	content: "\25C6";
}*/


.spEmpty {
	font-weight: 400;
	color: var(--main-text-color-light);
}


/* Chat window. */
#spChatContainer {
	background-color: var(--darker-0);
}
#spChatContainer form {
	display: flex;
}
#spChatContainer form > div.content {
	width: 90%;
}
#spChatContainer form > div.button {
	width: 10%;
	min-width: 3em;
}
#spChatContainer form > div.content textarea {
	display: block;
	margin: 0;
	width: 100%;
	border-radius: 0;
}
#spChatContainer form > div.button button {
	display: block;
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	border-radius: 0;
	font-size: 2.7em;
	line-height: 1;
}
#spChatContainer form > div.button button::before {
	content: "\e829";
	margin: 0;
}
#spChatContainer form > div.button button span::after {
	content: "";
	margin: 0;
}

/*svg .node rect {
	fill: none;
}

svg .edgePath path {
	stroke: #333;
	fill: none;
	stroke-width: 1.5px;
}*/

svg#canvas .node rect {
	stroke: var(--menu-bg-color-active);
	fill: var(--brightest);
	stroke-width: 1.5px;
}
svg#canvas .node div.ref,
svg#canvas .node div.date {
	text-align: center;
	line-height: 1.2;
}
svg#canvas .node div.date {
	font-size: 0.85em;
}
svg#canvas .node.self rect {
	/*fill: #f1f2f9;*/
	stroke: var(--ipright-color);
	fill: var(--ipright-color);
}
svg#canvas .node.self div,
svg#canvas .node.self div a {
	color: var(--brightest);
}
svg#canvas .node.self div.date {
	font-weight: bold;
}
svg#canvas .cluster rect {
	stroke: var(--main-text-color-light);
	fill: none;
	stroke-width: 1.5px;
	stroke-dasharray: 5, 5;
}
/*svg#canvas .cluster div.hl {
	font-size: 0.85em;
}*/



svg.wmChart{display:block}
.wmChart .chart-bg{fill:var(--brightest);}
.wmChart .chart-box{fill:var(--brightest);}
.wmChart .chart-tick.axisY line{stroke: #e4e4e4; stroke-width: 1; stroke-dasharray: 5;}
.wmChart .chart-tick.axisY .last line{stroke: #212121; stroke-width: 1; stroke-dasharray: none;}
.wmChart text{font-family:Helvetica,Arial,Verdana,sans-serif;font-size:12px;fill:#666}
.wmChart .axisX text{ fill: #212121; }
.wmChart .axisY text{ fill: #aeafb1; }
.wmChart .axisX text{text-anchor:middle}
.wmChart .xAngle text{text-anchor:end}
.wmChart .axisY text{text-anchor:end}
.wmChart circle{stroke-width:2px;stroke:#eee}
.wmChart .line{fill:none;stroke-width:3}
.wmChart .fill{stroke-width:0}
.wmChart .valShow text,.pie text{fill:#fed;opacity:.8;font-size:10px}
.wmChart .pie text{font-size:12px;stroke-width:.5}
.wmChart .chartInfo g{opacity:0}
.wmChart .chartInfo g:hover{opacity:1}
.wmChart .chartInfo .textBg{fill:var(--darkest);opacity:.9}
.wmChart .chartInfo text{text-anchor:middle;fill:#887}
.wmChart .chartInfo g rect:nth-child(even){fill:#eee;opacity:.95;stroke:#eed;stroke-width:1}
.wmChart circle.pieBg{fill:#eee;stroke:none}


/*@keyframes blink {
	50% {
		border-color: #e74c3c;
	}
}
body .spEditingContainer {
	border: 3px solid rgba(0, 0, 0, 0);
}*/
/*body.spEditingActive .spEditingContainer {
	border: 3px solid #e74c3c;
}*/

/*body.spEditingActive .spEditingContainer .spFieldset {
	border: 3px solid #e74c3c;
}*/

/*body.spEditingActive .spEditingContainer .spFieldset {
	border-left: 0.3em solid #e74c3c;
}
body.spEditingActive .spEditingContainer .spFieldset.first {
	border-top: 0.3em solid #e74c3c;
}*/

/*body.spEditingActive .spEditingContainer .spFieldset {
	background-color: #e74c3c;
	padding-left: 0.3em;
}
body.spEditingActive .spEditingContainer .spFieldset.first {
	padding-top: 0.3em;
}*/


/* Editor. */
.spEditor > div {
	margin: 0;
	padding: 0;
	position: relative;
	background-color: var(--fieldset-bg-color);
}
.spEditor > div > div.control {
	position: absolute;
	background-color: #d4d9e3;
	width: 1.4em;
	height: 100%;
}
/*.spEditor > div > div.control div {
	font-size: 0.8em;
	text-align: center;
}*/
.spEditor > div > div.control div {
	position: absolute;
	font-size: 0.9375em;
	line-height: 1;
	left: 0.3em;
	top: 50%;
	margin-top: -0.5em;
	cursor: pointer;
	color: var(--matter-color);
}
.spEditor > div > div.control div:hover,
.spEditor > div > div.control div:active {
	color: var(--matter-color-mild);
}
.spEditor > div > div.control div::before {
	margin: 0;
}
.spEditor > div.inactive > div.control div {
	display: none;
}
.spEditor > div.active > div.control div {
	display: block;
}
.spEditor > div > div.contentOuter {
	/*background-color: #f0f3f6;*/
	padding: 0.5em;
	margin-left: 1.6em;
	overflow: hidden;
}
.spEditor > div > div.contentOuter > div.contentPrefix {
	float: left;
}
.spEditor > div > div.contentOuter > .content {
	overflow: hidden;
}
.spEditor > div > div.contentOuter > .content[contenteditable] {
	/*background-color: var(--brightest);*/
}
.spEditor > div > div.contentOuter > .content.pageBreak,
.spEditorContent.spEditorContentDisplay .content.pageBreak {
	padding-bottom: 0.5em;
	border-bottom: 1px dashed var(--main-text-color-light);
}
/*.spEditor > div > textarea {
	display: none;
	background-color: var(--brightest);
	padding: 0.5em;
	margin-left: 1em;
}*/
.spEditor > div > div.menuBig {
	width: 100%;
	overflow: hidden;
	padding: 0.5em 0.5em 0.5em 2em;
	background-color: var(--fieldset-border-color);
}
.spEditor > div > div.menuBig button {
	display: inline-block;
	font-size: 0.9em;
	margin: 0 1em 0 0;
	padding: 0.2em;
}
.spEditor > div.menuBigInactive > div.menuBig {
	display: none;
}
.spEditor > div.menuBigActive {
	background-color: rgba(240, 243, 246, 0.4);
	border-top: 3px double var(--fieldset-border-color);
	border-bottom: 3px double var(--fieldset-border-color);
}
.spEditor > div.menuBigActive > div.menuBig {
	display: block;
}
.spEditor > div.menuBigActive > div.menuBig .rules {
	display: inline-block;
	font-weight: 500;
}
.spEditor > div.menuBigActive > div.menuBig .rules > span {
	display: inline-block;
	padding: 0 0.2em;
	margin-right: 0.4em;
	border-radius: 0.2em;
	background-color: var(--brighter-3);
}
.spEditor > div.menuBigActive > div.menuBig .rules > span .remove {
	margin-left: 0.2em;
}

.spEditor > div > div.menu {
	position: absolute;
	height: 100%;
	top: 0;
	left: 3em;
	overflow: hidden;
	padding: 0 0 0.5em 1.5em;
}
.spEditor > div > div.menu button {
	font-size: 0.8em;
	float: left;
}

.spEditorContainer .spFieldsetButtons button {
	width: 2em;
	height: 2em;
	line-height: 2rem;
	padding: 0;
}
.spEditorContainer .spFieldsetButtons button {
	margin: 0 0.2em !important;
}
.spEditorContainer .spFieldsetButtons button span::after {
	content: "";
}
.spEditorContainer .spFieldsetButtons button span::before {
	margin: 0;
	font-size: 1em;
}
.spEditorContainer #spEditorBold {
	font-weight: bold;
}
.spEditorContainer #spEditorItalic {
	font-style: italic;
}
.spEditorContainer #spEditorUnderline {
	text-decoration: underline;
}
.spEditorContainer #spEditorSubscript sub,
.spEditorContainer #spEditorSuperscript sup {
	font-weight: bold;
	line-height: 1;
}
.spEditorContainer .spFieldsetButtons .buttonWithText {
	width: auto;
	padding-left: 0.4em;
	padding-right: 0.4em;
}
.spEditorContainer .spFieldsetButtons .buttonWithText > span::before {
	margin-right: 0.2em;
}

/* Editor in document editing (right panel). */
@media screen and (min-width: 117em) {
	#spPanelAltAction .spEditorContainer {
		position: absolute;
		overflow-x: hidden;
		overflow-y: scroll;
		height: calc(100vh - 3.5rem);
		width: 100%;
	}
}

/* Editor content formatting. */
.spEditorContent.spEditorContentDisplay .content > p,
.spEditorContent.spEditorContentDisplay .content > div {
	margin-top: 0.7em;
}
.spEditorContent.spEditorContentDisplay > p:empty {
	min-height: 1em;
}
.spEditorContent.spEditorContentDisplay mark.placeholder {
	font-weight: inherit;
	font-style: normal;
}
.spEditorContent ol,
.spEditorContent ul {
	margin-top: 0;
	margin-bottom: 0;
}
.spEditorContent ol ol,
.spEditorContent ol ul,
.spEditorContent ul ol,
.spEditorContent ol ol,
.spEditorContent ul ul {
	padding-left: 1em;
}
.spEditorContent ol > li,
.spEditorContent ul > li {
	margin-bottom: 0;
}
.spEditorContent table {
	width: 100%;
}
.spEditorContent table tr td,
.spEditorContent table tr th {
	border: 1px solid var(--main-text-color);
	padding: 0.5em;
	word-break: break-word;
}

.spEditorContent.spEditorContentDisplay > .rules {
	overflow: hidden;
}
.spEditorContent.spEditorContentDisplay > .rules > div:first-child {
	float: left;
	width: 70%;
	border-right: 3px double var(--fieldset-border-color);
}
.spEditorContent.spEditorContentDisplay > .rules > div:last-child {
	float: right;
	width: 30%;
	margin-top: 0.7em;
	padding-left: 0.7em;
	color: var(--main-text-color-light);
	font-size: 0.9em;
}

.spTemplateRuleSelector {
	display: none;
	font-size: 1em;
	margin: 0.2em 0 0 0;
	padding: 0.1em 0.4em;
}

.spDocumentWizard {
	text-align: center;
}
.spDocumentWizard .wmButton {
	display: inline-block;
	margin: 1em 0 0.5em 0;
}

/*
.spHistory > div {
	border-radius: 3px;
	padding: 0.3em;
	color: #1a2430;
	margin-bottom: 0.3em;
	position: relative;
}
.spHistory > div > .spName {
	font-size: 0.9em;
	color: var(--main-text-color-light);
	position: absolute;
	right: 0.3em;
	top: 0;
}
.spHistory > .spDate {
	font-size: 0.9em;
	text-align: center;
	margin: 0;
}
.spHistory > .spChange {
	background-color: #eae4de;
}
.spHistory > .spChange .spChangeBlock:not(:first-child) {
	display: inline-block;
	margin-top: 0.4em;
}
.spHistory > .spChange.today {
	background-color: transparent;
	padding-left: 0;
	padding-right: 0;
}
.spHistory > .spChange.today > div {
	border-top-style: solid;
	border-top-width: 2px;
	border-top-color: var(--matter-color);
	height: 2px;
}
.spHistory > .spChange.today > div > div {
	background-color: var(--matter-color);
	width: 1.5em;
	height: 0.6em;
	margin-top: calc(-0.3em - 1px);
	border-radius: 1em;
	border-radius: 20% 80% 80% 20% / 50% 50% 50% 50%;
}
*/

.spTaskManagerSection > div > div {
	margin: 0.5em;
	padding: 0.5em;
}
.spTaskManagerSection a.wmButton {
	display: inline-block;
	font-size: 1em;
	margin-top: 0.3em;
}
.spTaskManagerSection .task > div:first-child {
	font-size: 1.2em;
}
.spTaskManagerSection .task .overdue {
	color: var(--cue-alert-color);
	font-weight: 500;
}

.spHistory {
}
.spHistory ul {
	list-style-type: none;
	margin: 0;
	padding: 0 1em 0 0;
	position: relative;
	top: 0;
}
.spHistory ul:before {
	content: "";
	display: block;
	width: 0;
	height: 100%;
	border: 1px dashed var(--main-text-color-light);
	position: absolute;
	top: 0;
	left: 0;
}
.spHistory ul li {
	margin: 0 0 0 1.5em;
	position: relative;
	color: #1a2430;
	padding-bottom: 1em;
}
.spHistory ul li:first-child {
	margin-top: 0.7em !important;
}
.spHistory ul li .spChange {
	margin-top: 0.5em;
	padding: 0.5em;
	background-color: #eae4de;
	border-radius: 0.2em;
	position: relative;
	word-wrap: break-word;
}
.spHistory ul li .spChange.own {
	font-weight: 500;
	background: transparent;
	border-style: solid;
	border-width: 2px;
}
.spHistory ul li .spChange.agency {
	background: transparent;
	border-style: solid;
	border-width: 2px;
	border-color: var(--main-text-color-light);
	color: var(--main-text-color-light);
}

.spHistory ul li .spChange .row {
	display: flex;
}
.spHistory ul li .spChange .row .rowIndex {
	border-right: 1px solid var(--main-text-color-light);
	opacity: 0.7;
	padding-right: 0.5em;
}
.spHistory ul li .spChange .row .rowIndex span {
	font-size: 0.8em;
}
.spHistory ul li .spChange .row .rowChanges {
	flex: 1;
	padding-left: 0.5em;
}

/*.spHistory ul li .spChange a {
	display: inline-block;
}
.spHistory ul li .spChange a:first-of-type {
	display: inline;
}*/
.spHistory ul li > span {
	content: "";
	display: block;
	width: 0;
	height: 100%;
	border: 1px solid var(--main-text-color-light);
	position: absolute;
	top: 0;
	left: -1.5em;
	border-top: none;
}
.spHistory ul li > span:before {
	content: "";
	display: block;
	width: 0.9em;
	height: 0.9em;
	border-radius: 50%;
	background-color: var(--brightest);
	border: 2px solid var(--main-text-color-light);
	position: absolute;
	left: -0.45em;
	top: 0.25em;
}
.spHistory ul li.today > span:before {
	background-color: #f5cd79;
}
.spHistory ul li.today .date {
	font-weight: 700;
}
.spHistory ul li .date {
	color: var(--main-text-color);
	font-size: 0.95em;
}
.spHistory ul li.year {
	margin-top: 1em;
}
.spHistory ul li.year > span:before {
	width: 1.4em;
	height: 1.4em;
	background-color: #ede8e3;
	border-width: 3px;
	/*border-color: #3d496f;*/
	left: -0.7em;
	top: 0;
}
.spHistory ul li.year .date {
	color: #3d496f;
	font-size: 1.3em;
	font-weight: 500;
	line-height: 1.4rem;
}
.spHistory ul li .spChange .spName {
	font-size: 0.85em;
	color: var(--main-text-color-light);
	position: absolute;
	right: 0.3em;
	top: 0;
}
.spHistory ul li.hide {
	display: none;
}
.spHistory #showAll {
	margin: 0 1em -1em 1.5em;
	padding: 0.3em;
	text-align: center;
}
.spHistory #showAll > div {
	font-size: 0.85em;
}

.spPanelAltHeadline {
	margin: 0;
}
h4.spPanelAltHeadline {
	font-size: 1.3em;
	padding: 0.7rem;
}
#spPanelAltRight h4 {
	background-color: var(--darker-0);
}


.spActionFavorites {

}
.spActionFavorites a {
	display: inline-block;
	width: 3em;
	height: 3em;
	text-align: center;
	border: 1px solid var(--brightest);
	margin: 0.3em;
}

/*.spActionBar .wmBoardMonoIcon > div:first-child {
	border-top-left-radius: 0.15em;
	border-bottom-left-radius: 0.15em;
}*/
.spActionBar .actionsHeadline .spPanelAltHeadline::before {
	font-size: 0.7em;
	margin-right: 0.5em;
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal !important;
	font-weight: normal !important;
	content: "\e82f" !important;
	color: var(--brighter-6);
}
.spActionBar .actionsHeadline .spPanelAltHeadline:hover::before {
	content: "\e830" !important;
}
.spActionBar .actions {
	background-color: var(--menu-bg-color);
	padding: 1px 0;
	margin-top: 0.7em;
}
.spActionBar .actions .action {
	border-top: 1px dotted var(--menu-bg-color-middle);
}
.spActionBar .actions .action:first-child {
	border-top: none;
}
.spActionBar .actions .action.mopen a {
	color: var(--brightest) !important;
}
.spActionBar .actions .action .inner {
	padding: 0.2em 0.5em 0.2em 0.8em;
}
.spActionBar .actions .action .inner .description {
}
.spActionBar .actions .action .inner .description .title a {
	/*color: var(--brightest);*/
	font-size: 1.05em;
}

.spActionBar .actions .task {
	/*border-left-style: solid;
	border-left-width: 0.5em;*/
	margin-bottom: 0.3em;
	border-left: 0.2em solid var(--menu-bg-color-middle);
	background-color: var(--menu-bg-color-middle);
}
.spActionBar .actions .task .info {
	position: relative;
	/*font-size: 1.2em;*/
	padding: 0.5em 0.5em 0.5em 0.6em;
}
.spActionBar .actions .task.mopen .info {
	background-color: #315A7A; /*var(--matter-color)*/
}
.spActionBar .actions .task .info .identifier {
	padding-right: 1.5em;
}
/*
.spActionBar .actions .task .info .identifier,
.spActionBar .actions .task .info .client {
	display: inline-block;
}
.spActionBar .actions .task .info .identifier {
	margin-right: 1em;
}
*/
/*.spActionBar .actions .task .info .identifier.nomatter {
	font-weight: 500;
	color: var(--main-text-color-light);
}
.spActionBar .actions .task .info .client {
	font-size: 0.85em;
}
.spActionBar .actions .task .info .identifier a::before {
	font-size: 0.9em;
	color: var(--main-text-color-light);
	display: inline-block;
	margin-right: 0.2em;
}*/
.spActionBar .actions .task .info .meta {
	font-size: 0.85em;
}
.spActionBar .actions .task .info .identifier,
.spActionBar .actions .task .info .identifier a,
.spActionBar .actions .task .info .move {
	display: block;
	color: var(--brightest);
}
.spActionBar .actions .task .info .identifier .meta,
.spActionBar .actions .task .info .identifier .meta {
	color: var(--main-text-color-light);
}
.spActionBar .actions .task.mopen .info .identifier .meta,
.spActionBar .actions .task.mopen .info .identifier .meta {
	color: var(--brightest);
}
.spActionBar .actions .task .info .identifier a:hover,
.spActionBar .actions .task .info .identifier a:active,
.spActionBar .actions .task .info .move:hover,
.spActionBar .actions .task .info .move:active {
	opacity: 0.7;
}
/*.spActionBar .actions .task .info .identifier a small {
	color: var(--main-text-color-light);
}*/
/*.spActionBar .actions .task.mopen .info .identifier a small {
	color: var(--brighter-7);
}*/
.spActionBar .actions .task .info .title,
.spActionBar .actions .task .info .meta {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
/*.spActionBar .actions .task .info .client span {
	font-weight: 400;
}*/
.spActionBar .actions .task .info .move {
	position: absolute;
	right: 0;
	top: 1.2em;
	width: 1.5em;
	overflow: hidden;
	cursor: move;
}
.spActionBar .actions .task .info .move div {
	height: 1.6em;
}
.spActionBar .actions .task .info .move div::before {
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
	content: "\e82d";
	line-height: 1em;
	font-size: 1.2em;
	display: block;
	margin-left: -0.3em;
}

#spPanelAltAction {
	padding: 0 !important;
}
#spPanelAltAction .spPanelAltHeadline {
	margin: 0 0 0 0.6rem !important;
	color: var(--brightest);
}
#spPanelAltAction h4.spPanelAltHeadline {
	margin: 0 0 0.7rem 0 !important;
	background-color: var(--brighter-0);
}
#spPanelAltAction h5.spPanelAltHeadline {
	margin-top: 0.5rem !important;
}

.spCs {
	border-bottom-style: dotted;
	border-bottom-width: 1px;
	word-break: keep-all;
	overflow-wrap: normal;
}

.spSeparator {
	opacity: 0.5;
	margin: 0 0.5em;
	word-break: break-all;
}
.spSeparator::before {
	content: "\b7";
}
.spDictEntryColor::before {
	/*content: "\25cf";*/
	/*content: "\25a0";*/
	content: "\25c6";
	margin-right: 0.15em;
}

/*.spTwoLines small.spLine2 {
	display: block;
}*/
.spTwoLines small.spLine2::before {
	white-space: pre-wrap;
	content: "\A";
}

span.spColor {
	display: inline-block;
	width: 4em;
	height: 1em;
	background-color: currentColor;
}

button.spButtonEdit,
div.spButtonEdit,
.spButtonEdit:link,
.spButtonEdit:visited,
.spButtonEdit:hover,
.spButtonEdit:active,
.spElement.spElementActive .spButtonSubmitFinal,
.wmFormGridRowDelete,
.spEditBg {
	background-color: var(--cue-edit-color) !important;
}
.spEditFg {
	color: var(--cue-edit-color) !important;
}

.spLinkExternal > span::after {
	font-size: 0.9em;
	margin-left: 0.2em;
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal !important;
	font-weight: normal !important;
	content: "\e82c" !important;
}
.spLinkExternal > span > span {
	text-decoration: none !important;
}

span.iconFullSize[class^="icon-"]::before,
span.iconFullSize[class*=" icon-"]::before {
	font-size: 1em;
}

.spBoxBg {
	background-color: var(--brightest);
}

.spElementPanels {
	display: flex;
}
.spElementPanels > .first {
	display: none;
}
.spElementPanels .wmBoard {
	flex: 1;
	border: none;
	background: transparent;
	margin-right: 1em;
}
.spElementPanels .wmBoard:last-child {
	margin-right: 0;
}
.spElementPanels .wmBoard.wmBoardMonoIcon > div:first-child {
	border-radius: 0.8em 0 0 0.2em;
}
.spElementPanels .wmBoard.wmBoardMonoIcon > div:last-child {
	border-bottom: 1px solid var(--fieldset-border-color);
}
.spElementPanels .wmBoard.wmBoardMonoIcon > div:last-child small {
	color: var(--main-text-color-light);
}
.spElementPanels.textOnly .wmBoard > div:first-child {
	display: none;
}
.wmPageIndex .spElementPanels {
	margin-bottom: 0.5em;
}

.spElementPanels.textOnly.classificationClasses {
	flex-wrap: wrap;
}
.spElementPanels.textOnly.classificationClasses .wmBoard > div:last-child {
	display: block;
	font-size: 1.3em;
	text-align: center;
	padding: 0;
	min-width: 2em;
}
.spElementPanels.textOnly.classificationClasses div.wmBoard > div:last-child {
	color: var(--main-text-color-light);
}


/*.spChoiceGroups .spChoiceGroup {
	margin-top: 0.2em;
}
.spChoiceGroups .headline {
	background-color: #e6ebf2;
	line-height: 1.8em;
	height: 1.8em;
	padding-left: 0.5em;
	font-weight: 500;
	font-size: 0.85em;
	border-top: 1px solid var(--fieldset-border-color);
	border-left: 1px solid var(--fieldset-border-color);
	border-top-left-radius: 0.4rem;
}
.spChoiceGroups .spElementPanels > .first {
	display: block;
	width: 1.53em;
	background-color: #e6ebf2;
	border-left: 1px solid var(--fieldset-border-color);
	border-top: none;
	margin-right: 0.3em;
	margin-top: -0.3em;
}
.spChoiceGroups .spElementPanels.group {
	padding-top: 0.3em;
	margin-top: -1px;
}
.spChoiceGroups .spElementPanels.group .wmBoard {
	margin-right: 0.3em;
}
.spChoiceGroups .spElementPanels.group .wmBoard:last-child {
	margin-right: 0;
}
.spChoiceGroups .spElementPanels.group .wmBoard.wmBoardMonoIcon > div:first-child {
	border-top-left-radius: 0.4rem;
	border-bottom-left-radius: 0.4rem;
	background-size: cover;
}
.spChoiceGroups .spElementPanels.group .wmBoard.wmBoardMonoIcon > div.portrait:first-child {
	border-left-style: solid;
	border-left-width: 0.1em;
}*/
.spChoiceGroups .spChoiceGroup {
	margin-top: 0.7em;
	background-color: var(--fieldset-bg-color);
	border-bottom: 1px solid var(--fieldset-border-color);
}
.spChoiceGroups .spChoiceGroup:first-child {
	margin-top: 0.2em;
}
.spChoiceGroups .headline {
	/*border-bottom: 1px solid var(--fieldset-border-color);*/
	padding: 1.1rem 0.7rem 0.8rem 0.7rem;
	font-size: 1.1em;
	font-weight: 500;
}
.spChoiceGroups .headline .intro {
	color: var(--main-text-color-light);
	font-weight: 400;
}
.spChoiceGroups .spElementPanels.group {
	border-top: 1px solid var(--fieldset-border-color);
}
.spChoiceGroups .spElementPanels.group .wmBoard {
	margin: 0;
}
.spChoiceGroups .spElementPanels.group .wmBoard.wmBoardMonoIcon .spBoxBg {
	background-color: transparent;
	border-bottom: none;
}
.spChoiceGroups .spElementPanels.group .wmBoard.wmBoardMonoIcon > div:first-child {
	border-radius: 0;
	background-size: cover;
	background-position: center center;
}
.spChoiceGroups .spElementPanels.group .wmBoard.wmBoardMonoIcon > div.portrait:first-child {
	border-left-style: solid;
	border-left-width: 0.1em;
}

.spInterval {
	font-weight: 500;
}
.spInterval .unit {
	margin-left: 0.1em;
	font-size: 0.9em;
}
.spInterval.past::before {
	content: "\2212";
}
/*.spInterval {
	border-width: 1px;
	border-color: currentColor;
	border-bottom-style: solid;
	padding: 0 0.2em;
	font-weight: 500;
	position: relative;
}
.spInterval span {
	font-size: 0.9em;
	font-weight: 700;
	opacity: 0.8;
}
.spInterval.past {
	border-left-style: solid;
	border-bottom-left-radius: 0.3em;
	margin-right: 0.2em;
	padding-right: 0;
}
.spInterval.future {
	border-right-style: solid;
	border-bottom-right-radius: 0.3em;
	margin-left: 0.2em;
	padding-left: 0;
}
.spInterval::after {
	display: block;
	position: absolute;
	content: "";
	width: 5px;
	height: 5px;
	bottom: -3px;
	border-style: solid;
}
.spInterval.past::after {
	right: -5px;
	border-width: 2.5px 0 2.5px 5px;
	border-color: transparent transparent transparent currentColor;
}
.spInterval.future::after {
	left: -5px;
	border-width: 2.5px 5px 2.5px 0;
	border-color: transparent currentColor transparent transparent;
}*/

/*.spBox {
	margin-top: 0.5em;
	margin-bottom: 0.7em;
}
.spBox .spBoxHeading {
	padding: 1.3em 1em 0.8em 1em;
}
.spBox .spBoxHeading,
.spBox .spBoxPart {
	background-color: var(--brightest);
}
.spBox .spBoxHeading h5 {
	margin: 0;
	padding: 0;
}

.spTasksToDo .tasks .task {
	margin-top: 0.2em;
	padding: 0.8em 1em 0.8em 0.2em;
	display: flex;
	align-items: center;
}
.spTasksToDo .tasks .task .move {
	width: 1.5em;
	overflow: hidden;
	cursor: move;
}
.spTasksToDo .tasks .task .move div {
	width: 1em;
	height: 1.6em;
}
.spTasksToDo .tasks .task:hover .move div::before {
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
	content: "\e82d";
	line-height: 1em;
	font-size: 1.4em;
}
.spTasksToDo .tasks .task .mark {
	width: 3.4em;
	padding: 0.2em;
}
.spTasksToDo .tasks .task .mark a {
	width: 1.6em;
	height: 1.6em;
	border: 1px solid var(--main-text-color);
	border-radius: 0.2em;
	display: block;
}
.spTasksToDo .tasks .task .mark a:hover::before {
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
	content: "\e815";
	line-height: 1em;
	font-size: 1.6em;
}
.spTasksToDo .tasks .task .description .matter,
.spTasksToDo .tasks .task .description .client {
	display: inline-block;
	margin-right: 1em;
}
.spTasksToDo .tasks .task .description {
	width: 100%;
}
.spTasksToDo .tasks .task .description {
	width: 100%;
}
.spTasksToDo .tasks .task .date_due {
	width: 7em;
	text-align: right;
}*/

/*.spChoiceGroups .spChoiceGroup.assignment .add > div:last-child {
	padding-left: 0;
	padding-right: 0;
}
.spChoiceGroups .spChoiceGroup.assignment .add form {
	padding: 0;
}
.spChoiceGroups .spChoiceGroup.assignment .add form .spFieldset {
	margin: 0;
}
.spChoiceGroups .spChoiceGroup.assignment .add form .spFieldset > .wmRowInner {
	background: transparent;
}
.spChoiceGroups .spChoiceGroup.assignment .add form .spFieldset > .wmRowInner > div {
	padding: 0 0.4em;
	border: none;
}
.spChoiceGroups .spChoiceGroup.assignment .add form .spFieldset .submit {
	padding: 0;
}
.spChoiceGroups .spChoiceGroup.assignment .add form .spFieldset .submit .spButtonSubmitFinal {
	margin: 0;
	padding: 0.1em;
}
.spChoiceGroups .spChoiceGroup.assignment .add form .spFieldset .submit .spButtonSubmitFinal > span {
	display: none;
}*/

.spElementMessages > div {
	padding: 0.2em;
	margin: 0.2em 0;
	color: #1a2430;
	text-align: center;
	border-radius: 0.2em;
}
.spElementMessages .info {
	border: 1px solid var(--cue-warning-color);
	background-color: #fcf4d4;
}
.spElementMessages .success {
	border: 1px solid var(--cue-success-color);
	background-color: #d2fee3;
}
.spElementMessages .failure {
	border: 1px solid var(--cue-alert-color);
	background-color: #fed5d2;
}


.spTip .float {
	overflow: hidden;
}
.spTip .float > div {
	float: left;
	padding: 0.7em;
	margin: 0.7em 0 0 0.7em;
	border-radius: 0.2em;
}
.spTip .float > div:first-child {
	margin-left: 0;
}

.spStamps {
	overflow: hidden;
}
.spStamps > div {
	float: left;
	border: 0.5em double var(--fieldset-border-color);
	border-radius: 1em;
	padding: 0.5em;
	text-align: center;
	margin: 0.7em 0.7em 0 0;
	position: relative;
	/*background-color: var(--brightest);
	box-shadow: inset 0 0 0 10px blue;*/
	/*noinspection CssUnknownTarget*/
	/*-webkit-mask-image: url(/f/i/i/stamp.png);
	-webkit-mask-size: 351px 167px;
	mix-blend-mode: multiply;*/
}
.spStamps > div:after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	/*noinspection CssUnknownTarget*/
	/*background-image: url(/f/i/i/stamp3.png);
	mix-blend-mode: lighten;*/
}
.spStamps .performer {
	font-size: 0.85em;
}
.spStamps .text {
	font-size: 1.3em;
	font-weight: 500;
	text-transform: uppercase;
}

.spElement.spIPRightsSimple .spFieldset .wmRowInner > div {
	padding-top: 0;
}

.spIPRightDiagram > div {
	display: flex;
	flex-wrap: wrap;
}
.spIPRightDiagram > div > .item {
	border: 1px solid var(--fieldset-border-color);
	border-radius: 0.2em;
	padding: 0.7em 0;
	margin: 0.6em 0.6em 0 0;
	width: 18em;
	font-weight: 400;
	display: flex;
	justify-content: center;
	align-items: center;
}
.spIPRightDiagram > div > .item > .polity {
	padding: 0 1em;
	box-sizing: content-box;
}
.spIPRightDiagram > div > .item > .polity > div {
	text-align: center;
	font-size: 2.3em;
	line-height: 1;
	font-weight: 400;
	color: var(--main-text-color-light);
	width: 2ch;
}
.spIPRightDiagram > div > .item > .info {
	flex: 1;
}
.spIPRightDiagram > div > .item > .info > div {
	text-align: left;
}
.spIPRightDiagram > div > .item > .info > .category {
	font-size: 0.85em;
	color: var(--main-text-color-light);
}
.spIPRightDiagram > div > .item > .info > .ref {
	font-weight: 500;
}
.spIPRightDiagram > div > .item > .info > .meta {
	color: var(--main-text-color);
	font-size: 0.95em;
}
.spIPRightDiagram > div > .item.self {
	border-width: 2px;
}
.spIPRightDiagram > div > .item.deprecated {
	/*noinspection CssInvalidFunction*/
	background-image: repeating-linear-gradient(-45deg, transparent 0 1em, var(--darker-0) 1em 2em);
}
.spIPRightDiagram > .priorities > .item,
.spIPRightDiagram > .priority_of > .item,
.spIPRightDiagram > .parents > .item.siblings {
	border-style: dashed;
}


.spEmailHeader .spFieldsetContent {
	overflow: hidden;
}
.spEmailHeader .spFieldsetContent .left {
	float: left;
}
.spEmailHeader .spFieldsetContent .right {
	float: right;
}

tr.spThreadSelected > th {
	background-color: var(--matter-color) !important;
}
tr.spThreadSelected > th a,
tr.spThreadSelected > th small {
	color: var(--brightest) !important;
}

.spEmojisMenu {
	border-radius:0.3em;
	padding: 0.5em;
	right: -1em;
	top: 2em;
	width: 19em;
	z-index: 9990;
	background-color: #d4d9e3;
}

.spContactImage {
	width: 50px;
	height: 50px;
	border-radius: 0.3em;
}

.spThreadPosts {
	border: none !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
.spThreadPosts tbody tr td {
	border: none !important;
	padding-top: 0.6em !important;
	padding-bottom: 0.6em !important;
}
.spThreadPosts tbody tr td:first-child {
	padding-right: 0;
	width: 50px;
	vertical-align: top;
}
.spThreadPosts tbody tr td:last-child {
	display: flex;
	flex-flow: column;
}
.spThreadPosts tbody tr td:last-child > small {
	order: 1;
	display: block;
	margin-bottom: 0.2em;
}
.spThreadPosts tbody tr td:last-child > small > span:first-child {
	font-size: 1.2em;
	font-weight: 500;
	color: #0e1a35;
	margin-right: 0.6em;
}
.spThreadPosts tbody tr td:last-child > small > .spSeparator {
	display: none;
}
.spThreadPosts tbody tr td:last-child > .spThreadPostContent {
	order: 2;
}
.spThreadPosts tbody tr td:last-child > br {
	display: none;
}

.spFormThreadPost {
	background-color: var(--brightest);
	padding: 1em;
}
.spFormThreadPost .spFieldset {
	background-color: transparent;
	margin-top: 0;
}
.spFormThreadPost .spFieldset .wmRowInner .wmCol16 {
	border: 0.1em solid var(--fieldset-border-color) !important;
	border-radius: 0.3em;
	background-color: var(--brightest);
}

table.wmTableComplex.spElementsMessageTopic tbody tr.rowDefault th,
table.wmTableComplex.spElementsMessageTopic tbody tr.rowDefault td {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
table.spTableGroups.spElementsMessageTopic tbody tr.spTableSectionA td {
	padding: 0;
}
.spElementsMessageTopic a {
	display: block;
	padding: 0.3em 0;
}
.spElementsMessageTopic .amount {
	text-align: right;
}
.spElementsMessageTopic .amount > span {
	background-color: var(--main-text-color-light);
	color: var(--brightest);
	font-size: 0.85em;
	padding: 0 0.3em;
	border-radius: 3px;
}
tr.spMessageTopicSelected > th,
tr.spMessageTopicSelected > td {
	background-color: var(--matter-color) !important;
}
tr.spMessageTopicSelected > th a,
tr.spMessageTopicSelected > th small {
	color: var(--brightest) !important;
}

table.spMessagesChat tbody tr.spTableSectionA td {
	padding: 0.2em 0;
}
table.spMessagesChat tr.spCommentNew {
	border-left: 3px solid #e74c3c;
}
table.spMessagesChat tr.spCommentNew.lastNew.rowOwn {
	position: relative;
}
table.spMessagesChat tr.spCommentNew.lastNew.rowOwn::after {
	content: "";
	position: absolute;
	bottom: -0.5em;
	left: 0;
	right: 0;
	border-top: 2px dotted #e74c3c;
	z-index: 999;
}
table.spMessagesChat tr.spCommentNew.lastNew.rowOwn + tr > td {
	padding-top: 0.9em;
}


.spTimeline {
	padding-top: 0.7em;
}
.spTimeline .yearHead div {
	width: 4em;
	height: 2.4em;
	margin: 0 auto;
	border-radius: 1em;
	font-weight: 500;
	text-align: center;
	line-height: 2.4em;
}
.spTimeline .year {
	background-size: 0.6em 100%;
	background-position: center top;
	background-repeat: no-repeat;
	overflow: hidden;
}
.spTimeline .year .left {
	float: left;
	width: 50%;
	padding: 0.7em 1.3em 0.7em 0;
	text-align: right;
}
.spTimeline .year .right {
	float: right;
	width: 50%;
	padding: 0.7em 0 0.7em 1.3em;
	text-align: left;
}
.spTimeline .year .left > div,
.spTimeline .year .right > div {
	padding: 0.35rem;
	overflow: hidden;
}
.spTimeline .year .left > div:hover,
.spTimeline .year .right > div:hover {
	background-color: var(--darker-0);
}
.spTimeline .year .left > div .info,
.spTimeline .year .right > div .info {
	visibility: hidden;
}
.spTimeline .year .left > div:hover .info,
.spTimeline .year .right > div:hover .info {
	visibility: visible;
}
.spTimeline .year .left > div > div {
	float: right;
	margin-left: 0.25em;
}
.spTimeline .year .right > div > div {
	float: left;
	margin-right: 0.25em;
}
.spTimeline .important {
	font-size: 1.05em;
}
.spTimeline .important .datefixed {
	float: none !important;
	font-weight: 500;
}
.spTimeline .unimportant {
	font-size: 0.85em;
	opacity: 0.7;
}

.spAdministration ul {
	overflow: hidden;
	list-style: none;
	padding: 0;
}
.spAdministration ul li {
	float: left;
	margin: 0.2em 0.4em 0.2em 0;
	padding: 0.8em;
	background-color: var(--fieldset-bg-color);
	border: 1px solid var(--fieldset-border-color);
	border-radius: 0.2em;
}

.spInfoBox {
	display: flex;
	/*padding: 1.5em;*/
	align-items: stretch;
	margin-top: 0.7em;
	background-color: var(--brighter-6);
	border-top-left-radius: 1em;
	border-bottom-left-radius: 1em;
}
.spInfoBox > div {
	padding: 1.5em 0 1.5em 1.5em;
}
.spInfoBox > div.spInfoBoxIcon {
	/*background-color: var(--fieldset-border-color);*/
	display: flex;
	align-items: center;
	border-top-left-radius: 1em;
	border-bottom-left-radius: 1em;
}
.spInfoBox > div.spInfoBoxIcon > div {
	font-size: 3em;
	text-align: center;
	background-color: var(--darker-2);
	border: 0.1em solid var(--fieldset-bg-color);
	color: var(--fieldset-bg-color);
	border-radius: 1em;
	line-height: 1.45;
	width: 1.6em;
	height: 1.6em;
	margin-right: -0.8em;
}
.spInfoBox > div.spInfoBoxIcon > div::before {
	margin: 0;
}
.spInfoBox > div:last-child {
	padding-right: 1.5em;
}
.spInfoBox > div.spInfoBoxContent {
	padding-left: 3.5em;
}
.spInfoBox h5 {
	margin-top: 0;
}
.spInfoBox.darkbg {
	color: var(--brighter-8);
}
.spInfoBox.darkbg h5 {
	color: var(--brightest);
}
.spInfoBox.spBgDanger > div.spInfoBoxIcon > div {
	background-color: #b33939;
}


.spHelpItem {
	display: none;
}
.spHelpItem.spHelpHighlight {
	display: block;
}
.spHelpItem .spInfoBox {
	/*background-color: var(--fieldset-bg-color);*/
	background-color: #feefb3;
	color: #9f6000;
	font-size: 0.95em;
}
.spHelpItem .spInfoBox > div.spInfoBoxIcon {
	background-color: #9f6000;
}
.spHelpItem .spInfoBox > div.spInfoBoxIcon > div {
	background-color: #9f6000;
	border-color: #feefb3;
	color: #feefb3;
}
.spHelpItem .spInfoBox h5 {
	color: #9f6000;
}

.spHelpItem.inline {
	margin-left: 0.3em;
	color: #9f6000;
	line-height: 1;
	position: relative;
	cursor: pointer;
}
.spHelpItem.inline::before {
	display: inline-block;
	content: "\e848";
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
	background-color: #feefb3;
	border-radius: 100%;
}
.spHelpItem.inline > div {
	visibility: hidden;
	width: auto;
	min-width: 30em;
	background-color: #feefb3;
	color: #9f6000;
	text-align: left;
	padding: 0.6em;
	position: absolute;
	z-index: 99;
	top: -0.5em;
	left: 180%;
	font-size: 1rem;
	border-radius: 0.2em;
	line-height: 1.3;
}
.spHelpItem.inline > div::after {
	content: "";
	position: absolute;
	/*top: 50%;*/
	top: 0.4em;
	right: 100%;
	/*margin-top: -0.5em;*/
	border-width: 0.5em;
	border-style: solid;
	border-color: transparent #feefb3 transparent transparent;
}
.spHelpItem.inline:hover > div {
	visibility: visible;
}

.guide {
	display: none;
	position: fixed;
	z-index: 9999;
}
#guide {
	display: none;
	position: fixed;
	bottom: 3em;
	left: 50%;
	transform: translateX(-50%);
	width: 20%;
	min-width: 30em;
	z-index: 9999;
}
#guide audio,
#guide video {
	width: 100%;
}
#guide .controls {
	display: flex;
	font-size: 3em;
	color: var(--brightest);
	justify-content: space-between;
	align-items: center;
	padding: 0.2em;
	background: var(--menu-bg-color); /*var(--administration-color)*/
	line-height: 1;
	gap: 0.4em;
}
#guide .controls .wmButton {
	color: var(--brightest);
	border-radius: 0.2em;
	padding: 0.2em 0.4em;
}
#guide .controls .play::before {
	margin: 0;
}
#guide .controls .time {
	font-size: 0.5em;
}
#guide .controls .close {
	display: flex;
	align-items: center;
}
#guide .controls .close > span {
	font-size: 0.4em;
}
#guideTimeline {
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100vw;
	height: 3em;
	background: var(--menu-bg-color-active);
}
#guideTimeline .knob {
	position: absolute;
	left: 0;
	top: 0;
	width: 3em;
	height: 3em;
	border-radius: 1em;
	background: var(--menu-bg-color);
}
#guideClose {
	position: absolute;
	font-size: 2em;
	right: 1em;
	top: 1em;
	padding: 0.6em 1em;
	cursor: pointer;
	border-radius: 0.2em;
	color: var(--brightest);
}
#spCurtain,
#spSlide,
#spInterlude {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 9997;
	overflow: hidden;
}
#spCurtain > div {
	position: absolute;
	background-color: var(--darker-8);
}
#spSlide {
	z-index: 9998;
}
#spSlide > div,
#spInterlude > div {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background-color: var(--darker-8);
}
#spSlide > div > div {
	background: var(--brightest);
	padding: 2em;
}
.spHighlightHelp #spHelpToggle:link,
.spHighlightHelp #spHelpToggle:visited {
	position: relative;
	animation: pulse-white 2s infinite;
	border-radius: 2em;
}
.spHighlightHelp #spHelpToggle::after {
	display: block;
	position: absolute;
	content: "\2197";
	font-size: 10em;
	right: 0;
	top: -0.18em;
	line-height: 1;
	color: var(--cue-alert-color);
}
#spHelpArrow {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 9998;
}

@media print {
	:root {
		--main-bg-color: #fff;
		--main-text-color: #000;
		--main-text-color-light: #666;
		--fieldset-bg-color: #fff;
		--fieldset-border-color: #888;
	}
	#menu,
	#spPanelAlt,
	.spPanelTop,
	.spColorizeContainer,
	.spFilterContainer,
	.wmSort {
		display: none;
	}
	body {
		font-size: 10pt;
	}
	body,
	.spElement .spFieldset > div {
		background: transparent;
	}
	body.wmService .wmBody .wmRow {
		margin: 0;
	}

	.spElement .spFieldset {
		border: 1px solid #000;
		margin-top: 0.7em;
	}
	.spElement .spFieldset > .wmRowInner:last-child > div {
		border-bottom: none;
	}
	.spElement .spFieldset .spFieldsetHeading {
		margin-top: 0;
	}
	.spChoiceGroups {
		border: 1px solid #000;
	}

	table.wmTableComplex thead tr.spTableHeading .buttons {
		display: none;
	}
	table.spTableElements {
		border: 1px solid #000;
	}
	table.spTableElements .spTableSelect {
		display: none;
	}
	table.spTableElements tbody tr th,
	table.spTableElements tbody tr td {
		background-color: transparent;
		border: 1px solid var(--fieldset-border-color);
	}
	table.spTableElements tbody tr:last-child th,
	table.spTableElements tbody tr:last-child td {
		border-bottom: none !important;
	}
}


/* Login */
body.spLogin {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	height: 100%;
}
body.spLogin #spBodyMain {
	margin: 0;
	padding: 0;
	height: 100vh;
}
body.spLogin #spBodyMain > div {
	padding: 0;
	height: 100%;
}
body.spLogin #wmBody {
	position: fixed;
	width: 100%;
	height: 100%;
	padding: 0;
}
body.spLogin #wmBody .wmContainer {
	height: 100%;
}
body.spLogin #wmBody .wmContainer .left {
	display: flex;
	justify-content: center;
	align-items: center;
	min-width: 20em;
	max-width: 40em;
	width: 25%;
	height: 100%;
	background-color: var(--darker-4);
}
body.spLogin #wmBody .wmContainer .left .login {
	min-height: 0;
	width: 60%;
	min-width: 16em;
	max-width: 21em;
}
body.spLogin #wmBody .wmRow {
	margin: 0;
	padding: 0;
	height: 100%;
	display: flex;
}
body.spLogin #wmBody .wmRow > div {
	padding: 0;
	float: none;
}
body.spLogin #wmBody .wmRow h3,
body.spLogin #wmBody .wmRow p,
body.spLogin #wmBody .wmRow .wmInputDescription {
	color: var(--brighter-9);
}
body.spLogin #wmBody .header {
	/*display: flex;
	justify-content: center;
	align-items: center;*/
	margin: 0.5em 0 1em 0;
}
body.spLogin #wmBody .header div {
	margin: 0.5em 0;
}
body.spLogin #wmBody .header div img {
	display: block;
	max-width: 11em;
	width: 100%;
	margin: auto;
}
body.spLogin #wmBody .header div span {
	font-size: 1.4em;
	color: #8492af;
}
body.spLogin #wmBody .header h2 {
	font-size: 1.5em;
	text-align: center;
	margin: 0;
}
body.spLogin #wmBody fieldset {
	border: none;
	background: transparent;
	padding: 0;
}
body.spLogin #wmBody label {
	display: none;
}
body.spLogin #wmBody input {
	display: block;
	width: 100%;
}
body.spLogin #wmBody #wmTopMessages {
	max-width: none;
}
body.spLogin #wmBody .header h2 {
	color: var(--brighter-7);
}
body.spLogin #wmBody input,
body.spLogin #wmBody input:hover,
body.spLogin #wmBody input:focus {
	background-color: var(--darker-5) !important;
	border: none !important;
	color: var(--brightest) !important;
	padding: 0.5em !important;
	font-weight: 500;
	text-align: center !important;
}
body.spLogin #wmBody input::placeholder {
	color: var(--brighter-6);
	font-weight: 500;
}
body.spLogin #wmBody input:focus::placeholder {
	color: var(--brighter-2);
}
body.spLogin #wmBody .wmContainer .right {
	flex-grow: 1;
	position: relative;
}
body.spLogin #wmBody .wmContainer .right .spLineBottom {
	position: absolute;
	left: 0;
	bottom: 0;
	height: 4px;
	background-color: var(--matter-color);
	width: 100%;
}


/*body.spLogin {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	height: 100%;
}
body.spLogin #wmBody {
	display: flex;
	justify-content: flex-start;
	align-items: flex-end;
	max-width: 40em;
	height: 100%;
	padding: 0;
}
body.spLogin #wmBody .wmContainer {
	min-height: 0;
	min-width: 20%;
	max-width: 30em;
	opacity: 0.95;
}
body.spLogin #wmBody .wmRow {
	margin: 0;
	padding: 2em;
}
body.spLogin #wmBody .wmRow .wmCol16 {
	padding: 0;
}
body.spLogin #wmBody .header {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0.5em 0 1em 0;
}
body.spLogin #wmBody .header div {
	margin: 0 0.5em;
}
body.spLogin #wmBody .header div img {
	display: block;
	max-width: 9em;
	margin: auto;
}
body.spLogin #wmBody .header div span {
	font-size: 1.4em;
	color: #8492af;
}
body.spLogin #wmBody .header h2 {
	font-size: 1.5em;
	text-align: center;
	margin: 0;
}
body.spLogin #wmBody fieldset {
	border: none;
	background: transparent;
	padding: 0;
}
body.spLogin #wmBody button {
	margin: 0.5em 0 0 0;
}
body.spLogin #wmBody label {
	display: none;
}
body.spLogin #wmBody input {
	display: block;
	width: 100%;
}
body.spLogin #wmBody #wmTopMessages {
	max-width: none;
}
body.spLogin #wmBody input,
body.spLogin #wmBody input:hover,
body.spLogin #wmBody input:focus {
	background-color: var(--darker-5) !important;
	border: none !important;
	color: var(--brightest) !important;
	padding: 0.5em !important;
}
body.spLogin #wmBody .info {
	margin: 2em 0 4em 0;
	color: var(--brightest);
	text-shadow: 1px 0 0 rgba(0,0,0,0.5), 0 1px 0 rgba(0,0,0,0.5), -1px 0 0 rgba(0,0,0,0.5), 0 -1px 0 rgba(0,0,0,0.5),
		-1px -1px 0 rgba(0,0,0,0.5), -1px 1px 0 rgba(0,0,0,0.5), 1px -1px 0 rgba(0,0,0,0.5), 1px 1px 0 rgba(0,0,0,0.5);
}
body.spLogin #wmBody .time {
	font-size: 6em;
	line-height: 1.1;
}
body.spLogin #wmBody .date {
	font-size: 3em;
}*/

/* Email */
/*.spEmailList {
	font-size: 0.95em;
}
table.spEmailList tbody tr td {
	padding-top: 0.8em;
	padding-bottom: 0.8em;
}
.spEmailList tbody tr td a {
	color: #0e1a35;
}
.spEmailList tbody tr.spEmailSeen td a {
	font-weight: 400;
}
.spEmailList tbody tr td a div {
	overflow: hidden;
}
.spEmailList tbody tr td a div span:last-child {
	float: right;
	opacity: .7;
}
.spEmailList tbody tr td a div:last-child {
	opacity: .7;
}
.spEmailList tbody tr.spEmailOpen td {
	background-color: var(--matter-color);
}
.spEmailList tbody tr.spEmailOpen td a {
	color: var(--brightest);
}
.spEmail {
	margin-top: 0.7em;
	background-color: var(--fieldset-bg-color);
}
.spEmail > div {
	border-bottom: 1px solid var(--fieldset-border-color);
	padding: 1em;
}
.spEmail .spEmailHeading {
	padding: 1.3em 1em 0.8em 1em;
}
.spEmail > div h5,
.spEmail > div h6 {
	margin: 0;
}
.spEmailUnknown {
	background-color: var(--cue-warning-color) !important;
}
.spEmailTrusted {
	background-color: #8e44ad !important;
}
.spEmailSecure {
	background-color: var(--cue-success-color) !important;
}
.spEmailDanger {
	background-color: var(--cue-alert-color) !important;
}*/
.spBgInfo {
	background-color: #ffdd59;
	color: var(--darkest);
}
.spInfoBox.spBgInfo > div.spInfoBoxIcon > div {
	background-color: #f9ca24;
}

.spBgAffirmative {
	background-color: #8e44ad;
	color: var(--brightest);
}
.spBgPerfect {
	background-color: var(--cue-success-color);
	color: var(--brightest);
}
.spBgDanger {
	background-color: #b33939; /* c0392b */
	color: var(--brightest);
}
.spBgAffirmative *,
.spBgPerfect *,
.spBgDanger * {
	color: var(--brightest);
}

/*table.spEmailHeader {
	width: 100%;
	margin-top: 0 !important;
}
table.spEmailHeader tr th, .spEmailHeader tr td {
	padding: 0.1em 0;
	color: #0e1a35;
}
table.spEmailHeader tr > :first-child {
	text-align: right;
	width: 1em;
}
table.spEmailHeader tr > :last-child {
	text-align: right;
}
ul.spEmailFolders {
	list-style-type: none;
	overflow: hidden;
	margin: 0;
}
ul.spEmailFolders li {
	float: left;
	margin: 0.1em 0.2em 0.1em 0;
}
ul.spEmailFolders li a {
	padding: 0 0.4em;
	border-radius: 2px;
	background-color: var(--brightest);
	display: block;
	border: 1px solid var(--fieldset-border-color);
}
ul.spEmailFolders li.spEmailFolderActive a {
	background-color: #eef1f6;
}*/
.spDisplayHtml,
.spEmailAttachments {
	color: #1a2430;
	padding: 1em;
	background-color: var(--fieldset-bg-color);
	margin-top: 0.7em;
}
.spDisplayHtml table,
.spDisplayHtml table tbody tr,
.spDisplayHtml table tbody tr th,
.spDisplayHtml table tbody tr td {
	background: transparent;
	border: none;
}
.spDisplayHtml * {
	text-align: inherit;
	margin: 0;
	padding: 0;
}
.spDisplayHtml *[align="center"] {
	text-align: center;
}
.spDisplayHtml *[align="left"] {
	text-align: left;
}
.spDisplayHtml *[align="right"] {
	text-align: right;
}
.spDisplayHtml p {
	/*margin-top: 0.7em;*/
}
.spDisplayHtml ul {
	padding-left: 2em;
}
.spDisplayHtml table tr th,
.spDisplayHtml table tr td {
	padding: 0 0.2em;
}
.spDisplayHtml table tr th:first-child,
.spDisplayHtml table tr td:first-child {
	padding-left: 0;
}

/*.spEmailMessage .spEmailAddition {
	color: var(--darkest);
	background-color: var(--brightest);
	border: 1px solid #333;
	padding: 0 0.2em;
	border-radius: 3px;
	font-family: "Roboto Mono", monospace;
}*/
.spTrustedPart {
	border: 1px solid var(--cue-success-color);
}

/*.spEmailActions {
	margin-top: 0.7em !important;
	border-left: 2px solid var(--matter-color) !important;
}*/

/*.spFormBlueprintSelect {
	background-color: #ffffcb;
	border: 0.25em solid var(--cue-edit-color);
	margin-top: 0.7em;
	padding: 0.7em;
	color: var(--brightest);
	text-align: center;
	border-radius: 0.2em;
}*/
.spInfoBox.spBlueprintSelect > div {
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}
.spInfoBox.spBlueprintSelect > div.spInfoBoxIcon > div {
	font-size: 1.5em;
}

table.wmTableComplex tbody tr.rowOwn td {
	padding-top: 0;
}

.spSearchMain {
	background-color: var(--fieldset-bg-color);
	padding: 2em 4em;
	border-top-left-radius: 3em;
	border-top-right-radius: 3em;
	margin-top: 0.4em;
}
.spSearchMain input,
.spSearchMain button {
	display: inline-block;
	margin: 0;
	font-size: 1em;
	padding: 0.7em;
}
.spSearchMain input {
	border: 1px solid var(--fieldset-border-color) !important;
	border-radius: 3em;
	padding-left: 1.2em;
	width: 30em;
	max-width: 70%;
}
.spSearchMain button {
	margin-left: 1.5em;
}

.spSearchResults tbody tr.rowDefault.spResult th,
.spSearchResults tbody tr.rowDefault.spResult td {
	padding-top: 1.5em;
}
.spSearchResults tbody tr.rowOwn.spResult th,
.spSearchResults tbody tr.rowOwn.spResult td {
	padding-bottom: 1.5em;
}
.spSearchResults .excerpt {
	/*color: #3C4043;*/
}
.spSearchResults .excerpt em {
	font-style: normal;
	font-weight: 700;
	/*color: #52565A;*/
}

.spTermNext .date {
	color: var(--main-text-color);
	white-space: nowrap;
}

table.spElementsDocument tbody tr.spListElementPadded > :first-child,
table.spElementsDocument.spElementsListSelect tbody tr.spListElementPadded > :nth-child(2) {
	padding-left: 2em;
}
table.spElementsDocument tbody tr.spDocumentCopy > * {
	opacity: 0.6;
}


/*table.spElementsEmail tbody tr.spEmailUnread th,
table.spElementsEmail tbody tr.spEmailUnread td {
	background-color: #ffffeb;
}*/
table.spElementsEmail .spEmailClassify {
	display: inline-block;
	margin-bottom: 0.2em;
	padding: 0 0.2em;
	/*background-color: var(--history-bg-color);*/
	border: 1px solid var(--fieldset-border-color);
	border-radius: 0.2em;
}

.spFormDocument .documentAddressesUsed {
	background-color: var(--brighter-6);
	padding: 0.4em 0.7em;
	margin-bottom: 0.7em;
}
.spFormDocument .documentAddressesUsed:empty {
	display: none;
}

table.spElementsInvoice table.invoiceItems tr td {
	overflow-wrap: break-word;
}
table.spElementsInvoice table.invoiceItems tr .category {
	color: var(--main-text-color-light);
}
table.spElementsInvoice table.invoiceItems tr .description {
	width: 100%;
}

table.spElementsIPRightClass .spTableControl [class*="class_"] > a {
	font-size: 1.2rem;
	color: var(--main-text-color);
}
table.spElementsIPRightClass .spTableControl [class*="class_"] > a .spRef {
	font-size: 1.2rem;
	color: var(--darkest);
	background-color: var(--darker-0);
	padding: 0 0.2em;
	border-radius: 0.3em;
}

.spDirectEdit {
	display: block;
	width: 100%;
}
.spDirectEdit input,
.spDirectEdit select {
	display: block;
	width: 80%;
	min-width: 15em;
}
.spDirectEdit button {
	margin: 0.3em 0.3em 0 0 !important;
}
.spDirectEdit .select2-container .select2-selection--multiple .select2-selection__choice {
	padding: 0 0.2em;
	margin: 0.2em;
}
.spDirectEdit .select2-container .select2-search {
	padding: 0;
	margin: 0.2em;
}
.select2-container span[data-preview-href] {
	display: none;
}
.select2-container span.used[data-preview-href] {
	display: inline-block;
	background-color: #ff9;
	border-radius: 0.2em;
	padding: 0 0.4em;
	margin-right: 0.3em;
	color: var(--darkest);
}
.select2-container span.used.active[data-preview-href] {
	font-weight: bold;
}

.spProfile {
	margin-top: 0.7em;
}
.spProfile .summary > div {
	background-color: var(--fieldset-bg-color);
	border-bottom: 1px solid var(--fieldset-border-color);
}
.spProfile .summary .image img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 0;
}
.spProfile .summary .brief {
	padding: 1em 0;
}
.spProfile .summary .brief > div {
	overflow: hidden;
	padding: 0.7em 0.7em 0 0.7em;
}
.spProfile .summary .brief > div > div {
	float: left;
}
.spProfile .summary .brief > div > div:first-child {
	color: var(--main-text-color-light);
}
.spProfile .summary .brief > div > div:last-child {
	float: right;
	font-weight: 500;
}
.spProfile .summary .buttons {
	padding: 0 0.7em 0.7em 0.7em;
	text-align: right;
}
.spProfile .summary .buttons a {
	font-size: 1em;
}
.spProfile .main > div {
	background-color: var(--fieldset-bg-color);
	border-bottom: 1px solid var(--fieldset-border-color);
	padding: 0.7em;
}
.spProfile .main > div,
.spProfile .main > table {
	margin-top: 0.7em;
}
.spProfile .main > div:first-child {
	margin-top: 0;
}
.spProfile .main > div h4 {
	font-weight: 400;
	margin: 0.3em 0;
}

.spLoginSetup {
	margin: 0.7em auto;
	max-width: 50em;
}
.spLoginSetup > div {
	background-color: var(--fieldset-bg-color);
	border-top: 1px solid var(--fieldset-border-color);
	padding: 1em;
}
.spLoginSetup > div:first-child {
	border-top: none;
}
.spLoginSetup > div h3,
.spLoginSetup > div h5 {
	margin-top: 0;
}
.spLoginSetup .qrcode {
	margin-top: 0.7em;
}
.spLoginSetup .confirmation {
	margin-top: 0.7em;
	padding: 0.3em;
	background-color: var(--history-bg-color);
}
.spLoginSetup input {
	background-color: var(--history-bg-color);
}
.spLoginSetup .password {
	width: 20em;
}
.spLoginSetup #spLoginSetupPasswordStrength {
	margin-top: 0.7em;
	height: 0.6em;
	width: 20em;
	background-color: var(--main-text-color-light);
	border-radius: 2px;
}
.spLoginSetup #spLoginSetupPasswordStrength > div {
	height: 100%;
	border-top-left-radius: 2px;
	border-bottom-left-radius: 2px;
}
.spLoginSetup #spLoginSetupPasswordStrength.score0 > div {
	background-color: var(--cue-alert-color);
	width: 20%;
}
.spLoginSetup #spLoginSetupPasswordStrength.score1 > div {
	background-color: var(--cue-alert-color);
	width: 40%;
}
.spLoginSetup #spLoginSetupPasswordStrength.score2 > div {
	background-color: var(--cue-warning-color);
	width: 60%;
}
.spLoginSetup #spLoginSetupPasswordStrength.score3 > div {
	background-color: var(--cue-success-color);
	width: 80%;
}
.spLoginSetup #spLoginSetupPasswordStrength.score4 > div {
	background-color: var(--cue-success-color);
	width: 100%;
}

button:disabled {
	background-color: var(--main-text-color-light) !important;
	box-shadow: none !important;
	cursor: default !important;
}

.spDocumentPart[data-mime="text/plain"] {
	margin-top: 0.7em;
	padding: 0.7em;
	background-color: var(--fieldset-bg-color);
	border-bottom: 1px solid var(--fieldset-border-color);
}

.spButtonToday {
	font-size: 0.9rem;
	position: absolute;
	top: 50%;
	right: 1em;
	margin: -0.8rem 0 0 0;
	padding: 0.1rem 0.3em;
	/*background-color: var(--main-text-color-light);*/
	border: 1px solid var(--fieldset-border-color);
	background: transparent;
	color: var(--main-text-color-light);
}
.spButtonToday > span {
	font-weight: 500;
}

.spTableElements .spDocumentIcon {
	display: block;
	position: relative;
	font-size: 2em;
	color: var(--main-text-color-light);
}
.spTableElements .spDocumentIcon:hover,
.spTableElements .spDocumentIcon:active {
	opacity: 0.7;
	color: var(--main-text-color-light);
}
.spTableElements .spDocumentIcon::before {
	margin: 0;
}
.spTableElements .spDocumentIcon > div {
	position: absolute;
	font-size: 0.4em;
	bottom: 0.3em;
	left: 1.2em;
	width: 1.2em;
	height: 1.2em;
	text-align: center;
	border-radius: 1em;
	background-color: var(--fieldset-border-color);
}
.spTableElements .spDocumentIcon > div::before {
	display: block;
}
.spTableElements .spDocumentIcon > div.direction_1 {
	color: #e67e22; /*#4b6584*/
}
.spTableElements .spDocumentIcon > div.direction_1::before {
	content: "\e830";
}
.spTableElements .spDocumentIcon > div.direction_2 {
	color: #62cbe5; /*#f7b731*/
	transform: rotateX(180deg);
	-webkit-transform: rotateX(180deg);
}
.spTableElements .spDocumentIcon > div.direction_2::before {
	content: "\e830";
}
.spTableElements .spDocumentIcon > div.direction_3 {
	color: #4bc076;
}
.spTableElements .spDocumentIcon > div.direction_3::before {
	content: "\e825";
}

.spTableElements .spDocumentAttachments {
	padding-left: 1em;
}
.spTableElements .spDocumentAttachments::before {
	display: inline-block;
	content: "\e813";
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
	font-size: 1.5em;
	margin-right: 0.4em;
	color: var(--main-text-color-light);
}
.spTableElements .spDocumentAttachments .attachment {
	display: inline-block;
	padding: 0 0.2em;
	border-radius: 0.2em;
}
.spTableElements .spDocumentAttachments .attachment.spHighlight {
	background-color: var(--highlight-bg-color);
}
.spTableElements .spDocumentAttachments .spDocumentIconInline {
	font-size: 1.8em;
}

.spTableElements.spDocumentAttachments .info {
	width: 3em;
}
.spTableElements.spDocumentAttachments .info > div {
	writing-mode: vertical-lr;
	font-size: 0.7em;
}
/*.spTableElements.spDocumentAttachments .attachmentError .info,
.spTableElements.spDocumentAttachments .attachmentError .icon {
	background-color: var(--cue-alert-color);
	color: var(--brightest);
}*/
.spTableElements.spDocumentAttachments .issue {
	color: var(--cue-alert-color);
	font-size: 0.85em;
	padding-top: 0.6em;
}
.spTableElements.spDocumentAttachments .attachmentError {
	border-left: 2px solid var(--cue-alert-color);
}
.spTableElements.spDocumentAttachments .attachmentError .icon {
	color: var(--cue-alert-color);
}
.spTableElements.spDocumentAttachments .attachmentError .issue {
	padding-top: 0;
	color: var(--main-text-color-light);
}
.spTableElements.spDocumentAttachments .attachmentPrediction .info {
	background-color: var(--highlight-bg-color);
}

table.spTableElements tr .spTableSelect,
table.wmTableComplex.spTableElements tbody tr.rowColored td.spTableSelect:first-child {
	padding-left: 0 !important;
	padding-right: 0 !important;
	max-width: 1em;
	text-align: right;
}
.spTableElements tbody tr .spTableSelect input {
	visibility: hidden;
}
.spTableElements tbody tr:hover .spTableSelect input,
.spTableElements tbody tr .spTableSelect input:checked {
	visibility: visible;
}
.spElementsListSelect {
	margin-bottom: 2em;
}
.spTableElements tbody tr.spHighlight th,
.spTableElements tbody tr.spHighlight td {
	background-color: var(--highlight-bg-color);
}

.spTableElements .spBatchControl {
	display: block;
	position: fixed;
	bottom: 0;
	border: 3px double var(--fieldset-border-color);
	border-bottom: none;
	border-top-left-radius: 0.2em;
	border-top-right-radius: 0.2em;
	padding-top: 1em;
	padding-right: 1em;
	padding-bottom: 1em;
}
.spTableElements .spBatchControl > div {
	float: left;
	margin-left: 1em;
}
.spTableElements .spBatchControl > div:first-child {
	padding: 0.6em 0;
}
.spTableElements .spBatchControl > div button {
	margin: 0.2em;
	font-size: 1em;
}
.spTableElements .spBatchControl > div button::before {
	margin-right: 0.4em;
}

.spTag, .spBoxed {
	background-color: var(--darker-0);
	padding: 0.1em 0.3em;
	border-radius: 0.3em;
}
.spTag {
	font-size: 0.9em;
}

#spUploadModal {
	display: none;
	position: fixed;
	z-index: 9996;
	left: 0;
	top: 0;
	/*width: 100%;
	height: 100%;*/
	bottom: 0;
	right: 0;
	background-color: var(--darker-5);
	pointer-events: none;
}
#spUploadModal * {
	pointer-events: none;
}
#spUploadModal > div {
	background-color: #fefefe;
	margin: 15% auto;
	padding: 20px;
	border: 1px solid #888;
	width: 80%;
}
#spDropZone {
	background-color: var(--main-bg-color);
	margin: 1em 0;
	pointer-events: auto !important;
}
#spDropZone > div {
	text-align: center;
	line-height: 10rem;
	font-size: 2em;
	color: var(--darker-3);
}

.animationPulse {
	animation: pulse-white 2s infinite;
}
@keyframes pulse-white {
	0% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 var(--brighter-7);
	}
	70% {
		transform: scale(1);
		box-shadow: 0 0 0 10px var(--bright-transparent);
	}
	100% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 var(--bright-transparent);
	}
}

.iconAttachedTo::before {
	content: "\e813";
	margin-right: 0.2em;
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
}

.spPDFViewer {
	margin-top: 0.7em;
}

.spDocumentGlance {
	overflow: hidden; /* Do not show scrollbars on body. */
	background-color: var(--menu-bg-color-active);
}
.spDocumentGlance .spDocumentGlanceHeader {
	height: 2em;
	overflow: hidden;
	padding-right: 0;
	background-color: var(--menu-bg-color);
}
.spDocumentGlance .spDocumentGlanceHeader .wmRow > div > div {
	float: right;
	height: 2em;
}
.spDocumentGlance .spDocumentGlanceHeader .wmRow > div > div:first-child {
	float: left;
}
.spDocumentGlance .spDocumentGlanceHeader a,
.spDocumentGlance .spDocumentGlanceHeader span.info {
	display: inline-block;
	color: var(--brightest);
	height: 2em;
	padding-top: 0.2em;
	padding-bottom: 0.2em;
}
.spDocumentGlance .spDocumentGlanceHeader .displayModeButton a {
	display: block;
	/*background-color: var(--darker-5);*/
	padding-left: 1em;
	padding-right: 1em;
	background-color: var(--matter-color);
}
.spDocumentGlance .spDocumentGlanceMain .wmContainer .wmRow {
	margin-right: 0;
}
.spDocumentGlance .spDocumentGlanceMain .wmContainer .wmRow > div {
	padding-left: 0.4rem;
}
@media screen and (min-width: 117em) {
	/*body.wmService.spPanelAlt.spDocumentGlance .wmBody #spPanelAltAction {
		top: 0;
	}*/
}


/* Height of the embed should fit the remainder of the page. */
.spDocumentGlance.spPdfPage .wmBody {
	height: 100vh;
	padding-bottom: 0 !important;
}
.spDocumentGlance.spPdfPage #spBodyMain,
.spDocumentGlance.spPdfPage #spBodyMain > div,
.spDocumentGlance.spPdfPage .spDocumentGlanceMain,
.spDocumentGlance.spPdfPage .spDocumentGlanceMain .wmContainer .wmRow,
.spDocumentGlance.spPdfPage .spDocumentGlanceMain .wmContainer .wmRow .spElementContainer,
.spDocumentGlance.spPdfPage .spDocumentGlanceMain .wmContainer .wmRow .spElementContainer .spDocumentPart,
.spDocumentGlance.spPdfPage embed {
	height: 100% !important;
}
.spDocumentGlance.spPdfPage .spDocumentGlanceMain {
	display: flex;
	flex-direction: column;
}
.spDocumentGlance.spPdfPage .spDocumentGlanceMain .wmContainer:last-child {
	flex: 1;
}

.spDocumentPreviewEmpty .wmBody {
	height: 100vh !important;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.spDocumentPreviewEmpty .wmBody .previewIcons {
	font-size: 3em;
}
.spDocumentPreviewEmpty .wmBody .previewIcons > div {
	display: inline-block;
	margin: 0.3em;
}
.spDocumentPreviewEmpty .wmBody .previewIcons > div::before {
	margin: 0;
}
.spDocumentPreview {
	overflow-y: scroll !important;
}

.spDocumentHorizontal .spPDFViewer {
	position: relative;
	height: 100%;
	margin-top: 0;
}
.spDocumentHorizontal .spPDFViewer .spPDFViewerContainer {
	position: absolute;
	width: 100%;
	/*noinspection CssOverwrittenProperties*/
	height: 100vh;
	/*noinspection CssOverwrittenProperties*/
	height: calc(100vh - 2em);
	overflow-x: scroll;
	overflow-y: hidden;
}
.spDocumentHorizontal .spPDFViewer .spPDFViewerContainer .pdfViewer .page {
	margin: 0.5rem 0.3rem 0 0.3rem;
	box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, 0.75);
}

/*.spDocumentHorizontal .spPDFViewer {
	position: relative;
	height: 100%;
	margin-top: 0;
}
.spDocumentHorizontal .spPDFViewer .spPDFViewerContainer {
	position: absolute;
	width: 100%;
	height: 100vh;
	height: calc(100vh - 2em);
	overflow-x: scroll;
	overflow-y: hidden;
}*/

.spDocumentOnPanel .spPDFViewer {
	position: relative;
	height: calc(100vh - 3.5rem);
	/*border-left: 2px solid var(--fieldset-border-color);
	background-color: var(--fieldset-border-color);*/
	border-left: 1px solid var(--menu-bg-color);
}
.spDocumentOnPanel .spPDFViewer .spPDFViewerContainer {
	position: absolute;
	overflow-x: hidden;
	overflow-y: scroll;
	width: 100%;
	height: calc(100vh - 3.5rem);
}
.spDocumentOnPanel .spPDFViewer .spPDFViewerContainer .page {
	/*margin-bottom: 3px;*/
}
@media screen and (min-width: 117em) {
	.spDocumentOnPanel .spPDFViewer {
		margin: 0 !important;
	}
}

.spBlueprintComponentsSkipped {
	margin-bottom: 1em;
	text-align: center;
}
.spBlueprintComponentsSkipped ol {
	list-style-position: inside;
}
.spBlueprintComponentsSkipped ol > li {
	margin-bottom: 0;
	text-align: center;
}

.spBlueprintsUsage {
	overflow: hidden;
	background-color: var(--fieldset-bg-color);
	border-bottom: 1px solid var(--fieldset-border-color);
	padding: 0.3em 1em 0.7em 1em;
}
.spBlueprintsUsage > * {
	float: left;
}
.spBlueprintsUsage ul > li {
	list-style-type: none;
}
.spBlueprintsUsage ul > li::before {
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
	content: "\e815";
	margin-right: 0.5em;
}



/* Receipt */
.spContentGeneral.accountingNumbersSummary {
	text-align: right;
}
.spContentGeneral.accountingNumbersSummary strong {
	font-weight: 500;
}

/* Invoice */
.spFormInvoice #spElementInvoiceitems .wmFormGridRowOuter {
	margin-bottom: 0.3em;
	padding-bottom: 0.3em;
	border-bottom: 3px solid var(--fieldset-border-color);
}
.spFormInvoice #spElementInvoiceitems .inputReduced {
	opacity: 0.5;
}

/* Imports File */
.spImportsFileTable {
	width: 100%;
	margin-top: 1em;
}
.spImportsFileTable td {
	border: 1px solid var(--fieldset-border-color);
	background-color: var(--fieldset-bg-color);
	padding: 0.4em;
}
.spImportsFileTable thead td,
.spImportsFileTable td.columnIndex,
.spImportsFileTable td.menu {
	font-weight: 500;
	background: transparent;
	border: none;
}
.spImportsFileTable td.columnIndex {
	text-align: right;
}
.spImportsFileTable td.content {
	overflow-wrap: break-word;
	word-wrap: break-word;
	-ms-word-break: break-all;
	/*noinspection CssOverwrittenProperties*/
	word-break: break-all;
	/*noinspection CssOverwrittenProperties*/
	word-break: break-word;
}
.spImportsFileTable td.separator {
	text-align: center;
	color: var(--main-text-color-light);
	background: transparent;
	border: none;
}
.spImportsFileTable td.menu select {
	width: 100%;
}


.spReconcile .spFormReconcile .lineRight {
	background-color: var(--history-bg-color);
	padding: 0.5em;
	margin-bottom: 0.7em;
}
.spReconcile .spFormReconcile .lineRight:last-child {
	margin-bottom: 0;
}
.spReconcile .spFormReconcile input[type="radio"] {
	vertical-align: baseline;
	margin: 0 0.3em 0 0;
}
.spReconcile .spFormReconcile button {
	display: block;
	margin: 0;
	padding: 0;
	width: 100%;
}


/* Kanban board. */

.spKanban {
	display: flex;
	overflow-x: auto;
	overscroll-behavior-x: none;
	align-items: stretch;
	margin-top: 0.7em;
}
.spKanban .section {
	width: 20em;
	padding: 1em;
	flex-shrink: 0;
}
.spKanban .section:nth-child(odd) {
	background-color: rgba(0, 0, 0, 0.03);
}
.spKanban .section .title {
	padding-bottom: 0.2em;
}
.spKanban .section .title a:link,
.spKanban .section .title a:visited {
	color: var(--main-text-color);
}
.spKanban .section .title a:hover,
.spKanban .section .title a:active {
	color: var(--main-text-color-light);
}
.spKanban .section .cards {
	display: flex;
	flex-direction: column;
	min-height: 70vh;
}
.spKanban .section .cards .card {
	margin-top: 0.7em;
	padding: 0.7em 1em;
	overflow-wrap: break-word;
	word-break: break-word;
	flex-shrink: 0;
	background-color: var(--fieldset-bg-color);
	box-shadow: rgba(0, 0, 0, 0.02) 0 0 0 1px, var(--darker-0) 0 1px 2px 0, var(--darker-0) 0 2px 8px 0;
	border-radius: 0.6em;
	user-select: none;
	/*cursor: pointer;*/
}
.spKanban .section.menu .title {
	opacity: 0.7;
}
[data-drag-item] {
	cursor: move;
}


/* Sign out page. */
.achievement {
	margin-top: 0.7em;
	display: flex;
	align-items: center;
	padding: 0 0.5em;
	line-height: 1.3;
}
.achievement .icon {
	font-size: 3em;
	padding: 0 0.5em;
}
.achievement .number {
	font-size: 1.8em;
	font-weight: 500;
	padding-right: 0.3em;
	line-height: 1;
}

/* Select2 select inputs. */
.spFieldset .select2 {
	width: 100% !important;
}
.spFieldset .select2-container {
	line-height: 1.3;
}
.spFieldset .select2-container .select2-selection--single {
	border: none;
	border-radius: 0;
	background-color: transparent;
	height: 1.2em;
}
.spFieldset .select2-container .select2-selection--single .select2-selection__rendered {
	padding-left: 0;
}
.select2-container .select2-dropdown {
	border-color: var(--fieldset-border-color) !important;
	border-radius: 0 0 0.2em 0.2em;
	background-color: #f5f7f9;
	margin-top: 0.3em;
}
.select2-container .select2-dropdown.select2-dropdown--above {
	border-radius: 0.2em 0.2em 0 0;
	margin-top: -1em;
}
.select2-container .select2-dropdown ul > li {
	margin-left: 0;
}
.spFieldset .select2-container--classic .select2-selection--single:focus {
	border: 2px solid #5897fb !important;
}
.spFieldset .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 1.3;
	padding: 0;
}
.spFieldset .select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 1.2em;
}
.select2-container--default .select2-results > .select2-results__options {
	max-height: 20em !important;
}
.spFieldset .select2-container *:focus {
	/*background-color: #d4d9e3 !important;*/
}
/* Multi-select */
.spFieldset .select2-container .select2-selection--multiple {
	border: none;
	min-height: 0;
	background-color: transparent;
}
.spFieldset .select2-container .select2-selection--multiple .select2-selection__rendered {
	background-color: transparent !important;
	padding: 0;
}
.spFieldset .select2-container .select2-selection--multiple .select2-selection__rendered li {
	margin-left: 0;
}
.spFieldset .select2-container .select2-search.select2-search--inline {
	display: block;
}
.spFieldset .select2-container .select2-search--inline .select2-search__field {
	display: block;
	background-color: transparent !important;
	width: 100% !important;
}
.spFieldset .select2-container .select2-selection--multiple .select2-selection__choice {
	padding: 0;
	margin: 0 1em 0 0;
	border: none;
	background-color: transparent;
}

.spFieldset .select2 .spCtr {
	vertical-align: top;
	line-height: 1.2;
	display: inline-block;
}

/* Flatpickr date inputs. */
/*.flatpickr-calendar .flatpickr-months .flatpickr-month {
	height: 2rem;
}
.flatpickr-calendar input,
.flatpickr-calendar input:focus,
.flatpickr-calendar input:hover {
	border: none !important;
	text-align: left;
}
.flatpickr-calendar .flatpickr-day {
	border-radius: 2px;
}*/


/* Dropzone file uploading. */
/*body.dz-drag-hover {
	opacity: 0.5;
}*/
#spFileUploadPreview .dz-preview {
	position: relative;
	display: inline-block;
	width: 12em;
	margin: 0.5em;
	background-color: var(--fieldset-border-color);
	padding: 0.5em;
	border-radius: 0.2em;
}
#spFileUploadPreview .dz-preview:first-child {
	margin-left: 0;
}
#spFileUploadPreview .dz-preview .dz-image {
	display: none;
}
#spFileUploadPreview .dz-preview .dz-progress {
	display: block;
	height: 1em;
	border: 1px solid var(--main-text-color-light);
}
#spFileUploadPreview .dz-preview .dz-progress .dz-upload {
	display: block;
	height: 100%;
	width: 0;
	background: green;
}
#spFileUploadPreview .dz-preview .dz-error-message {
	color: red;
	display: none;
}
#spFileUploadPreview .dz-preview.dz-error .dz-error-message,
#spFileUploadPreview .dz-preview.dz-error .dz-error-mark {
	display: block;
}
#spFileUploadPreview .dz-preview.dz-success .dz-success-mark {
	display: block;
}
#spFileUploadPreview .dz-preview .dz-error-mark,
#spFileUploadPreview .dz-preview .dz-success-mark {
	position: absolute;
	display: none;
	top: 1.5em;
	width: 54px;
	height: 58px;
	left: 50%;
	margin-left: -27px;
}


/* pdf.js PDF viewer. */
.spPDFViewer .spPDFViewerContainer {
	position: relative;
}
.spPDFViewer .spPDFViewerContainer .pdfViewer .page {
	margin: 0 auto 0.3rem 0;
	border-image: none;
	border: none;
}
.spPDFViewer .spPDFViewerContainer .pdfViewer .annotationLayer section {
	border: none;
	background: rgba(64, 175, 248, 0.2);
	border-radius: 2px;
	padding: 0;
	margin: 0;
}
.spPDFViewer .spPDFViewerContainer .textLayer ::selection {
	color: inherit;
	background: var(--matter-color);
}
.spPDFViewer .spPDFViewerContainer .textLayer ::-moz-selection {
	color: inherit;
	background: var(--matter-color);
} /* combining ::selection and ::-moz-selection does not work! */


/* Date Picker. */
.spDatePickerInput {
	/*position: relative;*/
}
/* overwrite border style to avoid blinking on click */
/*.spDatePicker__input:focus {
	border: 0.0625rem solid #a5a6a8;
}*/
.spDatePicker {
	font-size: 0.75rem;
	border-radius: 2px;
	box-shadow: 0 1px 2px 0 #2f3133;
	position: absolute;
	padding: 20px 15px;
	border-width: 0;
	text-align: center;
	background-color: var(--fieldset-bg-color);
	cursor: default;
	z-index: 9990;
}
/*.spDatePicker.-is--hidden {
	display: none;
}*/
.spDatePicker.-position--above {
	margin-bottom: 5px;
}
.spDatePicker.-position--below {
	margin-top: 5px;
}
.spDatePicker span {
	display: inline-block;
	width: 30px;
	line-height: 26px;
	/*color: #63666a;*/
	border: 2px solid rgba(0, 0, 0, 0);
}
.spDatePicker .spDatePicker__title span {
	font-size: 1rem;
	width: 100%;
	/*color: #2f3133;*/
	text-align: center;
}
.spDatePicker .spDatePicker__prev,
.spDatePicker .spDatePicker__next {
	text-align: center;
	cursor: pointer;
}
.spDatePicker .spDatePicker__prev span:hover, .spDatePicker .spDatePicker__next span:hover {
	/*color: #2f3133;
	background-color: #63666a;*/
	background-color: var(--fieldset-border-color);
	width: 30px;
	height: 30px;
	border-radius: 15px;
}
.spDatePicker .dayName span {
	font-weight: bold;
	text-align: center;
}
.spDatePicker .day {
	text-align: center;
	/*border: 1px solid #63666a;*/
	border: 1px solid var(--fieldset-border-color);
	cursor: pointer;
}
.spDatePicker .day:not(.-is--disabled):not(.-is--selected):hover {
	background-color: var(--fieldset-border-color);
}
.spDatePicker .day:not(.-is--disabled):not(.-is--selected):hover span {
	color: var(--fieldset-bg-color);
}
/*.spDatePicker .day.-is--selected {
	background-color: var(--matter-color);
}*/
.spDatePicker .day.-is--selected span {
	/*color: var(--fieldset-bg-color);*/
	font-weight: bold;
	text-decoration: underline;
	border-color: var(--matter-color) !important;
}
.spDatePicker .day.-is--disabled span {
	color: #63666a;
}
.spDatePicker .day.today span {
	font-weight: bold;
	border-color: var(--menu-bg-color);
}












/* Patentswatch */


.wmFlex .wmRow,
.wmDash .wmRow,
.wmDash .wmRowInner,
.wmRowInner.wmDash {
	display: flex;
}
.wmDash .wmRow,
.wmDash .wmRowInner,
.wmRowInner.wmDash {
	padding-top: 0.25em;
	padding-bottom: 0.25em;
}
.wmFlex .wmRow > div,
.wmDash .wmRow > div,
.wmDash .wmRowInner > div,
.wmRowInner.wmDash > div {
	float: none;
	padding: 0;
	width: auto;
	flex: 1;
	display: flex;
	flex-direction: column;
}
.wmDash .wmRow > div,
.wmDash .wmRowInner > div,
.wmRowInner.wmDash > div {
	border: 1px solid #a9c3d1;
	background-color: #fdfdfd;
	border-radius: 2px;
	margin: 0 0.25em;
}
.wmFlex .wmRow > div:first-child,
.wmDash .wmRow > div:first-child {
	margin-left: 0.75em;
}
.wmFlex .wmRow > div:last-child,
.wmDash .wmRow > div:last-child {
	margin-right: 0.75em;
}
.wmDash .wmRowInner > div:first-child,
.wmRowInner.wmDash > div:first-child {
	margin-left: 0;
}
.wmDash .wmRowInner > div:last-child,
.wmRowInner.wmDash > div:last-child {
	margin-right: 0;
}
.wmDash .wmRow > div > div:first-child,
.wmDash .wmRowInner > div > div:first-child,
.wmRowInner.wmDash > div > div:first-child {
	background-color: #f0f0f0;
	padding: 0 0.5em;
}
.wmFlex .wmRow > div,
.wmFlex .wmRowInner > div {
	flex: 1;
	display: flex;
	justify-content: center;
	flex-direction: column;
}
.wmDash .wmRow > div > div:last-child,
.wmDash .wmRowInner > div > div:last-child,
.wmRowInner.wmDash > div > div:last-child {
	padding: 0.2em 0.5em;
	flex: 1;
	display: flex;
	justify-content: center;
	flex-direction: column;
	text-align: center;
}
.wmDash h3, .wmDash h4, .wmDash h5, .wmDash h6,
.wmBoard h3, .wmBoard h4, .wmBoard h5, .wmBoard h6 {
	margin: 0;
	padding: 0;
	border: none;
	line-height: 1.5;
}
.wmDash .wmRow > div > div.wmDashButtons:last-child {
	padding: 0;
}
.wmDash .wmRow > div > div.wmDashButtons:last-child a {
	white-space: nowrap;
	/*background-color: #f1f9fd;*/
	border-top: 1px solid #ddd;
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
}
.wmDash .wmRow > div > div.wmDashButtons:last-child a::after {
	content: "";
}
.wmDash .wmRow > div > div.wmDashButtons:last-child a:first-child {
	border-top: none;
}

.wmFlex .wmFlexRow,
.wmDash .wmDashRow {
	display: flex;
	flex-direction: row !important;
	justify-content: space-around !important;
	align-items: center !important;
}
.wmDash .wmDashRow button {
	font-size: 1em;
	padding: 0.3em 0.5em;
	white-space: nowrap;
}
.wmDash .wmDashRow input,
.wmDash .wmDashRow select:not([multiple]),
.wmDash .wmDashRow button {
	margin: 0;
	height: 2.1em;
}
.wmDash .wmDashRow.wmDashRowCenter {
	justify-content: center !important;
}
.wmFlex .wmFlexRow.wmFlexRowCenter > *,
.wmDash .wmDashRow.wmDashRowCenter > * {
	margin: 0 0.25em;
}

.wmDash .wmRow > div > div.wmDashButtons.wmDashRow:last-child {
	margin-top: 0.7em;
}
.wmDash .wmRow > div > div.wmDashButtons.wmDashRow:last-child a {
	border-top: none;
	border-left: 1px solid #ddd; /* #a9c3d1 */
	height: 100%;
}
.wmDash .wmRow > div > div.wmDashButtons.wmDashRow:last-child a:first-child {
	border-left: none;
}

.wmFlex .wmFlexCenter {
	justify-content: center !important;
}
.wmFlex .wmFlexCenter > * {
	flex: 0 !important;
}



.wmBoard,
fieldset,
.wmDash .wmRow > div,
.wmDash .wmRowInner > div,
.wmRowInner.wmDash > div {
	display: block;
	background-color: #fff;
	border-radius: 0;
	border: none;
	/*box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.1);*/
	border: 1px solid #d4d9e3;
}
.wmBoard > div:first-child,
.wmDash .wmRow > div > div:first-child,
.wmDash .wmRowInner > div > div:first-child,
.wmRowInner.wmDash > div > div:first-child {
	background-color: transparent;
	padding: 1em 1em 0.3em 1em;
}
.wmBoard > div:last-child,
.wmDash .wmRow > div > div:last-child,
.wmDash .wmRowInner > div > div:last-child,
.wmRowInner.wmDash > div > div:last-child {
	padding: 0 1em 1em 1em;
}
div.wmTabs {
	font-size: 1.1em;
}
div.wmTabs ul li {
	background-color: #fff;
	border-color: #d4d9e3;
}
div.wmTabs ul li a,
div.wmTabs ul li > span {
	padding-left: 1.2em;
	padding-right: 1.2em;
}
div.wmTabs ul li > * {
	font-family: museo-sans, Tahoma, sans-serif;
}
div.wmTabs ul li.active > span {
	border-bottom: 1px solid #f6f7fa;
	color: #1a2430;
	font-weight: 500;
}
div.wmTabs div {
	border-color: #d4d9e3;
}




/* Assistant */

#spBodyMain {
	padding-left: 1em;
}
.spColorizeContainer > .wmRow > div {
	padding-left: 1em;
}

.pwFormCompact {
	max-width: 60em;
}
.pwForm .headline {
	margin-bottom: 0.7em;
}
.pwForm fieldset {
	padding-left: 0;
	padding-right: 0;
}
.pwForm input,
.pwForm select {
	display: block;
	width: 100%;
}
.pwForm input[type='checkbox'] {
	display: inline-block;
}
.pwForm label.wmInputOptional::after {
	font-size: 0.85em;
	color: var(--main-text-color-light);
	margin-left: 0.4em;
}
.pwForm label.wmInputRequired::after {
	font-size: 0.85em;
	margin-left: 0.4em;
	font-weight: bold;
	color: var(--cue-alert-color);
}
.pwForm .wmInputDescription {
	font-size: 0.85em;
	color: var(--main-text-color-light);
}

.icon-webmini-sort::before {
	/*noinspection CssNoGenericFontName*/
	font-family: "Sp";
	font-style: normal;
	font-weight: normal;
	content: "\e819";
	line-height: 1;
	font-size: 9px;
}

.wmDash {
	margin-bottom: 2em;
}
table.wmTableComplex thead tr th {
	background-color: var(--main-bg-color);
	padding: 0.5em 0.3em;
	vertical-align: middle;
}


.wmBoard.wmBoardMonoIcon {
	display: flex;
}
.wmBoardMonoIcon.wmBoardHelp > div {
	padding: 0.5em 1em;
}
.wmBoardMonoIcon.wmBoardHelp > div:first-child {
	background-color: #f1c40f;
	max-width: 4em;
}
