/* global settings */
* { font-family: "Open Sans", "Helvetica Neue",Helvetica,Arial,sans-serif; font-weight: inherit; font-size: inherit; color: inherit; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
html, body { height: 100%; overflow: hidden; font-weight: normal; font-size: 14px; color: black; }
body { background-color: #ececec; min-height: 100%; }
select::-ms-expand { display: none; }
a:focus { outline: none; }
*[draggable=true] { user-select: none; -moz-user-select: none; -webkit-user-select: none; -ms-user-select: none; -moz-user-drag: element; -webkit-user-drag: element; -khtml-user-drag: element; cursor: move; }

.mobile { display: none; }
.desktop { display: inline-block; }

:root
{
	--main-color:								#50a82f;
	--main-text-color:							white;
	--highlight-color:							#43bf21;
	--dark-color:								#53af31;
	--button-radius: 							4px;
	--icon-button-radius: 						4px;
	--menu-button-radius: 						0;

	--menu-text-color: 							white;
	--menu-highlight-color:						#70e151;
	--button-color: 							var(--main-color);
	--button-highlight-color: 					var(--highlight-color);
	--button-text-color: 						white;
	--button-text-highlight-color: 				white;
	--context-color: 							var(--main-color);
	--context-highlight-color: 					var(--highlight-color);
	--context-text-color: 						white;
	--context-text-highlight-color: 			white;
}

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* popup button dialog */
.popup-button { position: relative; }
.popup-button-button { appearance: none; display: block; }
.popup-button-button span, .popup-button-button label { display: block; font-size: 10px; font-weight: 600; line-height: 1.2; margin-bottom: 0;
														white-space: nowrap; text-overflow: ellipsis; }
button:focus.popup-button-button { outline: none!important; }
/*button.popup-button-button, button:active.popup-button-button, button:focus.popup-button-button { font-weight: bold; padding: 5px 30px 5px 30px; background-color: var(--button-color); border-color: var(--button-color); color: var(--button-text-color); border-radius: var(--button-radius); }
button:hover.popup-button-button { background-color: var(--button-highlight-color); border-color: var(--button-highlight-color); color: var(--button-text-highlight-color); }
button:disabled.popup-button-button, button:hover:disabled.popup-button-button { background-color: #9f9f9f; border-color: #9f9f9f; color: var(--button-text-color); }*/
button.popup-button-button, button:active.popup-button-button, button:focus.popup-button-button { font-weight: 400; padding: 2px 10px 2px 10px;
		background-color: transparent; color: black; border-radius: var(--button-radius); border: 1px solid #c6c6c6; }
button:hover.popup-button-button { background-color: var(--button-highlight-color); border-color: var(--button-highlight-color); color: var(--button-text-highlight-color); }
button:disabled.popup-button-button, button:hover:disabled.popup-button-button { background-color: #9f9f9f; border-color: #9f9f9f; color: var(--button-text-color); }

.popup-button-content { display: grid; grid-template-columns: fit-content(70px) max-content; text-align: left; column-gap: 5px; max-width: 200px;
						overflow: hidden; }
.popup-button-backdrop { display: none; position: fixed; left: 0; top: 0; width: 100vw; height: 100vh; background-color: #ececec; opacity: 0.1;
						 z-index: 1000; }
.popup-button-dialog-container { background-color: #ececec; position: fixed; z-index: 1001;
								 box-shadow: 1px 1px 7px 2px rgba(0,0,0,0.5); border: 1px solid #d6d6d6;
								 width: auto; height: auto; left: 50%; top: 50%; padding: 10px 20px 20px 20px; overflow: hidden;
								 visibility: hidden; transform-origin: center; }
.popup-button-dialog-container-start { transform: scale(0); transition: transform 0.15s ease-in-out; }
.popup-button-dialog-container-visible { transform: scale(1); transition: transform 0.15s ease-in-out; overflow: visible; }
.popup-button-dialog { max-width: 100vw; max-height: 100vh; }
.popup-button-dialog > div > label { padding-top: 10px; display: block; }
.popup-button-dialog > div > label:first-child { padding-top: 0; }
.popup-button-dialog div.checkbox { margin-top: 10px; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* flex-layout grid */
.flex-grid-row { margin-left: -15px; margin-right: -15px; display: flex; flex-direction: row; flex-wrap: wrap; }
.flex-grid-col-1, .flex-grid-col-2, .flex-grid-col-3, .flex-grid-col-4, .flex-grid-col-5, .flex-grid-col-6, .flex-grid-col-7, .flex-grid-col-8, .flex-grid-col-9, .flex-grid-col-10, .flex-grid-col-11, .flex-grid-col-12
	{ padding-left: 15px; padding-right: 15px; min-height: 1px; flex: 0 0 auto; }
.flex-grid-row-wide { margin-left: -35px; margin-right: -35px; display: flex; flex-direction: row; flex-wrap: wrap; }
.flex-grid-row-wide .flex-grid-col-1, .flex-grid-row-wide .flex-grid-col-2, .flex-grid-row-wide .flex-grid-col-3, .flex-grid-row-wide .flex-grid-col-4, .flex-grid-row-wide .flex-grid-col-5, .flex-grid-row-wide .flex-grid-col-6, .flex-grid-row-wide .flex-grid-col-7, .flex-grid-row-wide .flex-grid-col-8, .flex-grid-row-wide .flex-grid-col-9, .flex-grid-col-10, .flex-grid-row-wide .flex-grid-col-11, .flex-grid-row-wide .flex-grid-col-12
	{ padding-left: 35px; padding-right: 35px; min-height: 1px; flex: 0 0 auto; }
.flex-grid-col-1 { width: 8.33333333% }
.flex-grid-col-2 { width: 16.66666666%; }
.flex-grid-col-3 { width: 25%; }
.flex-grid-col-4 { width: 33.33333333%; }
.flex-grid-col-5 { width: 41.66666666%; }
.flex-grid-col-6 { width: 50%; }
.flex-grid-col-7 { width: 58.33333333%; }
.flex-grid-col-8 { width: 66.66666666%; }
.flex-grid-col-9 { width: 75%; }
.flex-grid-col-10 { width: 83.33333333%; }
.flex-grid-col-11 { width: 91.66666666%; }
.flex-grid-col-12 { width: 100%; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* new dynamic flex-layout */
.flex-row { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: flex-start; column-gap: 30px; margin-bottom: 20px; flex: 1 1 100%;
			max-width: 100%; justify-content: stretch; }
.flex-inner-row { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: flex-start; column-gap: 30px; flex: 1 1 100%; max-width: 100%; }
.flex-row.form-group:after, .flex-row.form-group:before, .flex-inner-row.form-group:after, .flex-inner-row.form-group:before { display: none; }
.form-horizontal .flex-row.form-group, .form-horizontal .flex-inner-row.form-group { margin-left: 0; margin-right: 0; }

.flex-col { flex: 1 1 0; }
.flex-col > label { padding-top: 10px; }
.flex-col0 { flex: none; }
.flex-col1 { flex: 1 1 0; }
.flex-col2 { flex: 2 2 0; }
.flex-col3 { flex: 3 3 0; }
.flex-col4 { flex: 4 4 0; }
.flex-col5 { flex: 5 5 0; }
.flex-col6 { flex: 6 6 0; }
.flex-col7 { flex: 7 7 0; }
.flex-col8 { flex: 8 8 0; }
.flex-col9 { flex: 9 9 0; }
.flex-col10 { flex: 10 10 0; }
.flex-col11 { flex: 11 11 0; }
.flex-col12 { flex: 12 12 0; }


/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* radio and checkbox */
input[type='radio'] { accent-color: var(--main-color); }
input[type='checkbox'] { accent-color: var(--main-color); }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* global button, input, link */
button:focus { outline: none!important; }
.btn-default.active.focus, .btn-default.active:focus, .btn-default.active:hover, .btn-default:active.focus, .btn-default:active:focus, .btn-default:active:hover { background-color: var(--button-color); border-color: var(--button-color); color: var(--button-text-color); }
.btn-default.disabled.focus, .btn-default.disabled:focus, .btn-default.disabled:hover, .btn-default[disabled].focus, .btn-default[disabled]:focus, .btn-default[disabled]:hover { background-color: var(--button-color); border-color: var(--button-color); color: var(--button-text-color); }
button.btn-default, button.btn-primary, button:active.btn-default, button:active.btn-primary, button:focus.btn-default, button:focus.btn-primary { font-weight: bold; padding: 5px 30px 5px 30px; background-color: var(--button-color); border-color: var(--button-color); color: var(--button-text-color); border-radius: var(--button-radius); }
button.btn-default span, button.btn-primary span, button:active.btn-default span, button:active.btn-primary span, button:focus.btn-default span, button:focus.btn-primary span { color: white; }
button:hover.btn-default, button:hover.btn-primary { background-color: var(--button-highlight-color); border-color: var(--button-highlight-color); color: var(--button-text-highlight-color); }
button:disabled.btn-default, button:disabled.btn-primary, button:hover:disabled.btn-default, button:hover:disabled.btn-primary { background-color: #9f9f9f; border-color: #9f9f9f; color: var(--button-text-color); }
button:disabled.btn-default span, button:disabled.btn-primary span, button:hover:disabled.btn-default span, button:hover:disabled.btn-primary span { color: var(--button-text-color); }

button.btn-icon { width: 32px; border-radius: var(--icon-button-radius); }
button.btn-icon, button:active.btn-icon, button:focus.btn-icon { padding: 5px 5px 5px 5px;  border-radius: var(--icon-button-radius); }
button.btn-icon-tabbar, button:active.btn-icon-tabbar, button:focus.btn-icon-tabbar { padding: 1px 5px 1px 5px; border-radius: var(--icon-button-radius); }
button.btn-icon-tabbar { width: auto; }
button.btn-icon-tabbar span { color: var(--button-text-color); display: inline-block; }
button.btn-icon-tabbar-left { width: auto; }
button.btn-icon-tabbar-left span { color: var(--button-text-color); display: inline-block; }
button.btn-icon-tabbar-left, button:active.btn-icon-tabbar-left, button:focus.btn-icon-tabbar-left { padding: 1px 5px 1px 5px; position: relative; top: -2px; margin-right: 20px; }

button.btn-icon-tabbar-big .icon { height: 28px; position: relative; top: 1px; display: block; }
button.btn-icon-tabbar-big .fa { width: 24px; height: 28px; font-size: 18px; position: relative; top: 5px; display: block; }

button.btn-icon-svg { line-height: 0; padding: 0; width: 32px; height: 32px; margin-left: 10px; }
button.btn-icon-svg path, button.btn-icon-svg rect, button.btn-icon-svg polygon { fill: var(--button-text-color); }
button.btn-icon-svg svg { width: 28px; height: 28px; display: block; }
button.btn-icon-svg:hover, button.btn-icon-svg:active, button.btn-icon-svg:active:hover { background-color: var(--button-highlight-color); }
button.btn-icon-svg:hover path, button.btn-icon-svg:hover rect, button.btn-icon-svg:hover polygon,
	button.btn-icon-svg:active path, button.btn-icon-svg:active rect, button.btn-icon-svg:active polygon { fill: var(--main-color); }
button.btn-icon-svg:active, button.btn-icon-svg:focus { padding: 0; }

button.btn-label { width: 32px; color: var(--main-color); display: inline-block; }
button.btn-label, button:active.btn-label, button:focus.btn-label { padding: 5px 0 5px 0;  }
button.btn-label.active.focus, button.btn-label.active:focus, button.btn-label.active:hover, button.btn-label:active.focus, button.btn-label:active:focus, button.btn-label:active:hover { background-color: transparent; border-color: transparent; color: var(--main-color); }
button.btn-label.disabled.focus, button.btn-label.disabled:focus, button.btn-label.disabled:hover, button.btn-label[disabled].focus, button.btn-label[disabled]:focus, button.btn-label[disabled]:hover { background-color: transparent; border-color: transparent; color: #eee; }
button.btn-label, button:active.btn-label, button:focus.btn-label { font-weight: bold; padding: 5px 0px 5px 0px; background-color: transparent; border-color: transparent; color: white; }
button.btn-label span, button:active.btn-label span, button:focus.btn-label span { color: var(--main-color); }
button:hover.btn-label { background-color: transparent; border-color: transparent; color: #63bf41; }
button:hover.btn-label span{ color: #63bf41; }
button:disabled.btn-label, button:hover:disabled.btn-label { background-color: transparent; border-color: transparent; color: white; }
button:disabled.btn-label span, button:hover:disabled.btn-label span { color: white; }
button.auto-width { width: auto!important; }
button.btn.btn-flexbox { display: flex; flex-direction: row; align-items: center; width: 100%; }
.btn-flex-icon { flex: none; }
.btn-flex-text { flex: 1; text-align: left; padding-left: 30px; }

.btn-spacer-right { margin-right: 20px; display: inline-block; }

.btn-slash { position: relative; }
.btn-slash:after { content: ""; position: absolute; z-index: 1; border: 2px solid var(--button-color);
						 background-color: var(--button-text-color);
						 width: 6px; height: 100%; left: calc(50% - 3px); top: 0px; transform-origin: center; transform: rotate(45deg); }
button.btn-slash:disabled:after { border-color: #9f9f9f; }

a { color: var(--main-color); }
a:hover { color: var(--main-color); }
.btn-default-focus { box-shadow: none; outline: none; }
.accordion-toggle:focus { outline: none; }
.accordion-toggle:focus, .accordion-toggle:hover { text-decoration: none; }

.form-control:focus { box-shadow: inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(83,175,49,0.6); border-color: var(--main-color); }
.form-control[disabled] { background-color: white; opacity: .65; }
textarea.form-control[disabled] { opacity: 1; }
button.form-control[disabled] { opacity: 1; }

.input-group-btn button.btn-default, .input-group-btn button.btn-primary, .input-group-btn button:active.btn-default,
	.input-group-btn button:active.btn-primary, .input-group-btn button:focus.btn-default, .input-group-btn button:focus.btn-primary
		{ border-radius: 4px; }
.input-group-btn button:disabled { background-color: white; opacity: .65 }
.input-group-btn button:disabled span { color: #999; }

.control-label { padding-right: 0px; white-space: nowrap; }
.control-label small { font-size: 60%; }
.control-label.label-normal { font-weight: normal; }
.modal-title { font-size: 22px; }
.modal-header { padding: 20px 35px 10px 35px; }
.modal-body { background-color: #ececec; padding: 15px 35px 15px 35px; }
.modal-footer { padding-left: 35px; padding-right: 35px; }
.modal-footer-left { float: left; }
.modal.fade { transition: opacity 0.1s ease-in-out; }
.modal.fade .modal-dialog { transition-duration: .1s; }
div.modal-dialog { max-width: calc(100vw - 20px); }

.modal-xl { width: 1000px; }
.modal-xxl { width: 1800px; max-width: calc(100vw - 100px); }
.modal-xl-height .modal-body { min-height: 800px; max-height: calc(100vh - 100px); }
.col-compact { padding-left: 7px; padding-right: 7px; }
.row-compact { margin-right: -7px; margin-left: -7px; }
.input-right { text-align: right; }

.ui-select-container > div > span { overflow: hidden; }
.ui-select-container .ui-select-match-text { max-width: calc(100% - 10px); overflow: hidden; }
span.ui_search_team { font-weight: 600; }
span.ui_search_org { font-weight: 700; }

.checkbox-no-margin { margin-top: 0; margin-bottom: 7px; }
.checkbox label, .checkbox-inline label, .radio label, .radio-inline label { font-weight: normal; }

.modal-content { max-width: 100%; }

/* inline forms with auto-width fields */
.form-inline-autowidth { display: table; width: 100%; }
.form-inline-autowidth > .form-control, .form-inline-autowidth > p, .form-inline-autowidth > .form-inline, .form-inline-autowidth > .form-group, .form-inline-autowidth > .form-control-wrap, .form-inline-autowidth > .ui-select-container
	{ display: table-cell; vertical-align: middle; }

.align-top, .form-inline-autowidth > .align-top { vertical-align: top; }

.input-group-addon:first-child i { width: 15px; }
.form-control-group > .form-control, .form-control-group > .input-group, .form-control-group > .input-group, .form-control-group > .form-control-wrap, .form-control-group > .form-inline-autowidth, .form-control-group > .ui-select-container { margin-bottom: 5px; }
.form-control-group > *:last-child { margin-bottom: 0; }
.form-control-group.form-control-group-margin > * { margin-bottom: 5px; }
.form-control-group.form-control-group-large-margin > * { margin-bottom: 15px; }

.form-inline-autowidth > * { padding-right: 5px; }
.form-inline-autowidth > *:last-child { padding-right: 0; }
.form-inline-autowidth-nomargin { margin-bottom: 0!important; }
.form-control { color: black; }
.form-control-static-icon { width: 15px; display: inline-block; text-align: center; }

.control-label.small { font-size: 10px; font-weight: 200; color: #222; margin-top: 6px; }

/* marked input fields and labels */
.important-field > select-address, .important-field > .input-group, .important-field > input, .input-group.important-field { box-shadow: 0 0 4px 2px rgba(83, 175, 49, 1); border-radius: 4px; }
.input-group.important-field > select-address, .input-group.important-field > input { box-shadow: none; }

/* ui select boxes */
.ui-select-nosearch .ui-select-match { display: block!important; }
.ui-select-bootstrap .ui-select-choices-row.active > a { background-color: var(--main-color); }
.ui-select-bootstrap .form-control[disabled] { opacity: 1; background-color: #eee; }
.ui-select-bootstrap .form-control[disabled] { opacity: 1; background-color: #eee; }
.btn-default[disabled]:focus, .btn-default[disabled]:hover { color: black; }
.ui-select-bootstrap > .ui-select-choices { overflow-y: auto; }

/* address selector */
.select-address { display: inline-block; width: 100%; }
/*.select-address button, .select-address button:focus, .select-address button:active { padding: 6px 10px 6px 10px; background-color: #eee; border-color: #ccc; }
.select-address button span, .select-address button:focus span { color: #555; }
.select-address button:hover, .select-address button:active { background-color: var(--highlight-color); border-color: #6db153; border-left-color: #ccc; }
.select-address button:hover span, .select-address button:active span { color: white; }*/
.select-address input { cursor: pointer; }
.select-address input[readonly] { background-color: white; }
.select-address[readonly] button, .select-address[readonly] input, .select-address[readonly] button:active, .select-address[readonly] button:focus { background-color: #eee; }

.input-group-btn button, .input-group-btn button:focus, .input-group-btn button:active { padding: 6px 10px 6px 10px; background-color: white; border-color: #ccc; }
.input-group-btn button span, .input-group-btn button:focus span { color: var(--main-color); }
.input-group-btn button:hover, .input-group-btn button:active { background-color: var(--highlight-color); border-color: #6db153; border-left-color: #ccc; }
.input-group-btn button:hover span, .input-group-btn button:active span { color: white; }

/* datepicker */
.uib-datepicker ~ .dropdown-menu .btn-default { font-weight: normal; padding: 5px 10px; color: #333; background-color: #e6e6e6; border-color: #adadad; }
.uib-datepicker ~ .dropdown-menu .btn-default span { color: #333; }
.uib-datepicker ~ .dropdown-menu .btn-default.active span { font-weight: bold; }
.uib-datepicker button.btn-default { padding: 5px 10px 5px 10px; }
.uib-datepicker td, .uib-datepicker th { padding: 1px; }
.uib-datepicker td.uib-day > button.btn-default { padding: 10px; width: 35px; height: 35px; line-height: 1; }
.uib-datepicker-popup.dropdown-menu { padding: 5px; }
.uib-datepicker ~ .dropdown-menu table:focus { outline: none; }
.uib-datepicker ~ .dropdown-menu { padding: 10px; }
.uib-datepicker ~ .dropdown-menu li { padding-left: 0!important; padding-right: 0!important; }
.uib-datepicker[readonly] { background-color: white; }

/* Category selector dialog */
.button-selector, .button-selector-wide { margin-top: 20px; }
.button-selector button { display: block; width: 250px; margin: 10px auto 10px auto; }
.button-selector-wide button { display: block; width: 90%; margin: 10px auto 10px auto; }

/* user search */
.user-search-grid { min-height: 800px; max-height: 800px; }

/* organization editor */
.color-preview { display: table-cell; width: 32px; height: 32px; border: 1px solid #999; }
.col-sm-9 > .col-sm-4:first-child { padding-left: 0; }
.col-sm-9 > .col-sm-4:last-child { padding-right: 0; }
.col-sm-9 > .col-sm-6:first-child { padding-left: 0; }
.col-sm-9 > .col-sm-6:last-child { padding-right: 0; }
.org-editor-image { width: 100%; border: 1px solid #999; min-height: 32px; cursor: pointer; text-align: center; }
.org-editor-image img { max-width: 100%; max-height: 200px; display: inline-block; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* header */
header { background-color: var(--dark-color); padding: 2px 15px 2px 15px; display: flex; flex-direction: row; align-items: center; width: 100%; }
.logo:hover { cursor: pointer; }
.logo img { height: 45px; }
.header-left { display: flex; flex-direction: row; align-items: center; flex: none; }
.header-right { display: flex; flex-direction: row; align-items: center; flex: auto; justify-content: flex-end; }

.header-btn { color: var(--menu-text-color); border: none; background-color: transparent; vertical-align: middle; width: 68px; height: 38px; padding: 5px 6px 1px 6px;}
.header-btn span { color: var(--menu-text-color); font-size: 20px; }
.header-btn-menu span { color: var(--menu-text-color); font-size: 14px; }
.header-btn-text { color: var(--menu-text-color); font-size: 14px; font-weight: bold; background-color: transparent; cursor: pointer; padding-left: 40px; position: relative; top: 2px; }

.header-btn-text:hover { text-decoration: none; color: var(--menu-highlight-color); } /*#c6e5ba*/
.header-btn img { width: 26px; height: 26px; display: inline; border: 1px solid var(--menu-text-color); }
.header-btn .header-btn-arrow { padding-left: 5px; font-size: 14px; opacity: 0.5; }
.header-btn:hover .header-btn-arrow { opacity: 1; }
.header-tool-buttons .header-btn:hover { opacity: 0.7; }

.header-main-menu { padding-left: 20px;  }
.header-main-menu .dropdown-menu { left: inherit; left: 20px; }
.header-main-menu .dropdown-menu a { cursor: pointer; }
.header-main-menu .dropdown-menu > li > a:focus, .header-main-menu .dropdown-menu > li > a:hover { color: black!important; }
.header-main-dialog-button
{
	button.popup-button-button, button:active.popup-button-button, button:focus.popup-button-button { color: var(--menu-text-color); }
}

.header-info-menu .dropdown-menu { left: inherit; left: 0; }
.header-info-menu .dropdown-menu a { cursor: pointer; }
.header-info-menu .dropdown-menu svg.icon path { fill: black!important; }
.header-info-menu .dropdown-menu .icon { width: 10px; vertical-align: middle; margin-right: 5px; }

.header-user-menu .dropdown-menu { left: inherit; right: 0; }
.header-user-menu .dropdown-menu a { cursor: pointer; }

.header-search { display: inline-block; width: 260px; height: 26px; vertical-align: middle; margin-right: 30px; }
.header-search input { height: 26px; font-size: 14px; border-left: none; border: none; }
.header-search input:focus { border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; border-right: 1px solid #ccc; box-shadow: none; border: none; }
.header-search button, .header-search button:hover { height: 26px; padding-top: 4px; padding-left: 6px; padding-right: 6px; border-right: none; background-color: white; border: 1px solid #ccc; box-shadow: inset 0 1px 1px rgba(0,0,0,.075); border: none;}
.header-search .icon { color: var(--main-color); font-size: 16px; }

.header-info-container { display: flex; flex-direction: row; }
.header-info { display: flex; flex-direction: row; align-items: center; color: var(--menu-text-color); font-weight: bold; padding-right: 25px;
			   font-size: 14px; white-space: nowrap; }
.header-info a { color: var(--menu-text-color); padding-left: 5px; }
.header-info .icon { font-size: 22px; padding-right: 7px; position: relative; top: 1px; line-height: 1; }
.header-info .icon path, .header-info .icon g { fill: var(--menu-text-color); }

.header-organization { flex: 1; margin-right: 25px; margin-left: 50px; }
.header-organization .ui-select-bootstrap { max-width: 800px;  }
.header-organization .ui-select-bootstrap>.ui-select-choices { width: 150%; }

/* second document window */
.header-file { margin-left: 50px; color: var(--menu-text-color); font-size: 16px; font-weight: 700; }
.doc-window-content { position: absolute; bottom: 0; left: 0px; right: 0px; top: 50px; }
.doc-window-content-inner { background-color: #dbdbdb; max-width: 100%; width: 100%; max-height: 100%; height: 100%; position: relative; overflow-y: hidden; }
.doc-window-content-inner .doc_properties_edit { padding-left: 80px; padding-top: 6px; }

.doc_mini_thumb_container { display: flex; flex-direction: column; flex-wrap: nowrap; width: 100%; height: 100%; }
.doc_mini_thumb_container .doc_mini_thumb_list { flex: 1 1 100%; }
.doc_mini_thumb_searchbar { display: flex; flex-direction: row; flex: none; }
.doc_mini_thumb_search_cat { flex: 1 1 0; }
.doc_mini_thumb_search_cat .ui-select-multiple.ui-select-bootstrap input.ui-select-search { padding: 3px 6px 3px 6px; height: auto; }
.doc_mini_thumb_search_cat span.ui-select-match-item.btn { font-size: 10px; }
.doc_mini_thumb_search_cat span.ui-select-match-item.close { font-size: 13px; }
.doc_mini_thumb_search_term { flex: 1 1 0; }

.doc_separator { width: 1px; height: 20px; border-left: 1px solid #9e9e9e; display: inline-block; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* breadcrumb / tab bar */
.breadcrumb-container { height: 58px; background-color: white; clear: both; display: flex; flex-direction: row; flex: none; position: relative; }
.breadcrumb-container li svg { width: 40px; height: 40px; position: relative; display: inline-block; vertical-align: middle; margin-left: -14px; }
#loading-background-spinner { position: relative; margin-left: -30px; visibility: hidden; display: block; flex: none; z-index: 1; }
.tabbar { margin-top: 20px; display: flex; flex-direction: row; }
.tabbar-inner { background-color: #ebebeb; padding: 20px 15px 0px 15px; display: flex; flex-direction: row; min-height: 38px; align-items: center;
				position: relative; flex-wrap: nowrap; column-gap: 10px; height: auto; }
.tabbar-case-file .tabbar-inner { padding-left: 5px; padding-right: 5px; }
/* inner grouping for tabbar items */
.tabbar-inner-group { flex: 1 1 0; display: flex; flex-direction: row; flex-wrap: nowrap; column-gap: 10px; align-items: center; }
.tabbar-inner-group-fixed { flex: none; }						/* fixed size: don't stretch */
.tabbar-inner-group-collapse_0 { } 								/* collapse group to button at 1st if screen width gets smaller (at ca. 2440px) */
.tabbar-inner-group-collapse_1 { } 								/* collapse group to button at 1st if screen width gets smaller (at ca. 2280px) */
.tabbar-inner-group-collapse_2 { } 								/* collapse group to button at 2nd if screen width gets smaller (at ca. 2048px) */
.tabbar-inner-group-collapse_3 { } 								/* collapse group to button at 3rd if screen width gets smaller (at ca. 1980px) */
.tabbar-inner-group-collapse_4 { } 								/* collapse group to button at 3rd if screen width gets smaller (at ca. 1920px) */
.tabbar-inner-group-collapse_4a { } 							/* collapse group to button at 3rd if screen width gets smaller (at ca. 1800px) */
.tabbar-inner-group-collapse_4b { } 							/* collapse group to button at 3rd if screen width gets smaller (at ca. 1700px) */
.tabbar-inner-group-collapse_5 { } 								/* collapse group to button at 3rd if screen width gets smaller (at ca. 1600px) */
.tabbar-inner-group-collapse_6 { } 								/* collapse group to button at 3rd if screen width gets smaller (at ca. 1440px) */
.tabbar-inner-group-collapse_7 { } 								/* collapse group to button at 3rd if screen width gets smaller (at ca. 1280px) */
.tabbar-inner-group-collapse_8 { } 								/* collapse group to button at 3rd if screen width gets smaller (at ca. 1152px) */
.tabbar-inner-group-collapse_9 { } 								/* collapse group to button at 3rd if screen width gets smaller (at ca. 1024px) */
.tabbar-inner-group-collapse_10 { } 							/* collapse group to button at 3rd if screen width gets smaller (at ca. 900px) */
.tabbar-inner-group-collapse_11 { } 							/* collapse group to button at 3rd if screen width gets smaller (at ca. 800px) */
.tabbar-inner-group-collapse_12 { } 							/* collapse group to button at 3rd if screen width gets smaller (at ca. 768px) */
.tabbar-inner-group-collapse_13 { } 							/* collapse group to button at 3rd if screen width gets smaller (at ca. 600px) */
.tabbar-inner-group-collapse_14 { } 							/* collapse group to button at 3rd if screen width gets smaller (at ca. 480px) */
.tabbar-inner-group-collapse_15 { } 							/* collapse group to button at 3rd if screen width gets smaller (at ca. 384px) */
.tabbar-inner-group-collapse_16 { } 							/* collapse group to button at 3rd if screen width gets smaller (at ca. 320px) */
.tabbar-inner-dialog-button { display: none; }					/* dialog button is only shown if collapsed */
.tabbar-inner-dialog-items { display: flex; flex-direction: row; column-gap: 10px; flex: 1 1 0; }	/* dialog items in uncollapsed mode */
.tabbar-inner-dialog-items > span { line-height: 1.8; }
.tabbar-inner-dialog-button button { height: 45px; }
.tabbar-inner-dialog-button { margin-top: -5px; }
.tabbar-inner-dialog-button .popup-button-dialog .tabbar-select .ui-select-choices { left: unset; right: 0; }

.tabbar-inner-2line { height: 76px; }
.tabbar-inner > input { height: 26px; width: 250px;  margin-right: 16px; }
.tabbar-inner > input.small-input { width: 150px; }
.tabbar-inner .tabbar-input { height: 26px; flex: 1 1 0; }
/*.tabbar-inner .checkbox + .checkbox { margin-top: 10px; }*/
.tabbar-inner .checkbox { margin-top: 0; margin-bottom: 0; }
.tabbar-triangle { width: 38px; height: 38px; border-top: 38px solid white; border-right: 38px solid #ebebeb; display: block;
				   position: relative; z-index: 1; }
.tabbar-triangle-2line { width: 76px; height: 76px; border-top: 76px solid white; border-right: 76px solid #ebebeb; }
.tabbar-select { display: block; width: 230px; height: 26px; }
.tabbar-select > div > span { height: 26px; padding-top: 3px; padding-bottom: 3px; }
.tabbar-select .ui-select-choices { max-width: 100vw; }
.tabbar-select-150 > .ui-select-choices { width: 150%; max-height: 400px; }
.tabbar-select-200 > .ui-select-choices { width: 200%; max-height: 600px; }

.tabbar-inner .checkbox { display: block; }
.tabbar-inner .total { display: block; padding-right: 16px; border-right: 1px solid #aaa; }
.tabbar-date-container { display: flex; flex-direction: row; }
.tabbar-date-button { display: none; }
.tabbar-date { display: flex; flex-direction: row; flex: none; width: 126px; height: 26px; }
.tabbar-date > input { height: 26px; display: block; flex: 1 1 0; border-top-right-radius: 0; border-bottom-right-radius: 0; }
.tabbar-date > button.btn-default { display: inline-block; width: 26px; height: 26px; padding: 0; border-top-left-radius: 0; border-bottom-left-radius: 0; }
.tabbar-date > button.btn-default, .tabbar-date > button:focus.btn-default, .tabbar-date > button:active.btn-default { background-color: white; border-color: #ccc; }
.tabbar-date > button.btn-default > span, .tabbar-date > button:focus.btn-default > span { color: var(--main-color); }
.tabbar-date > button:hover.btn-default, .tabbar-daten > button:active.btn-default { background-color: var(--highlight-color); border-color: #6db153; border-left-color: #ccc; }
.tabbar-date > button:hover.btn-default > span, .tabbar-date > button:active.btn-default > span { color: white; }

.tabbar-balance { display: flex; flex-direction: row; width: 160px; height: 26px; margin-right: 10px; font-size: 14px; color: black; white-space: nowrap; }
.tabbar-balance span { height: 26px; display: block; flex: none; padding: 3px 4px 3px 0px; }
.tabbar-balance span.tabbar-balance-currency { padding: 3px 8px 3px 8px; width: 26px; border: 1px solid #ccc; border-top-left-radius: 4px; border-bottom-left-radius: 4px; background-color: white; }
.tabbar-balance input { height: 26px; display: block; flex: 1 1 0; border-top-left-radius: 0; border-bottom-left-radius: 0; padding: 6px 12px; background-color: white; }
.tabbar-balance input[readonly] { background-color: white; color: black; }

input.tabbar-input-small { width: 110px; }
.tabbar-select-small { width: 130px; }
button.tabbar-button-small { height: 25px; font-size: 12px; padding: 0px 15px 0px 15px; line-height: normal; display: inline-block; vertical-align: top; margin-right: 15px; }
button:active.tabbar-button-small { height: 25px; font-size: 12px; padding: 0px 15px 0px 15px; line-height: normal; }
button.tabbar-button, button:focus.tabbar-button { height: 25px; font-size: 12px; padding: 0px 15px 0px 15px; line-height: normal; display: inline-block; vertical-align: top; margin-right: 15px; }

.breadcrumb { flex: 1 1 0; white-space: nowrap; margin-left: 72px; margin-top: 10px; background-color: transparent;
			  overflow: hidden; margin-bottom: 0; display: flex; flex-direction: row; flex-wrap: nowrap; }
.breadcrumb li { display: block; flex: 0 1 auto; text-overflow: ellipsis; overflow: hidden; }
.breadcrumb li:last-child { flex: none; max-width: 80%; }
.breadcrumb * { font-size: 22px; }
.breadcrumb a { color: black; cursor: pointer; }
.breadcrumb a:hover { color: var(--main-color); text-decoration: none; }
.breadcrumb .active { color: black; }
.breadcrumb .breadcrumb-file-owned svg path { fill: var(--main-color); }
.breadcrumb .breadcrumb-file-not-owned, .breadcrumb .breadcrumb-file-not-owned a { color: #a9a9a9; }
.breadcrumb .breadcrumb-file-not-owned svg path { fill: #a9a9a9; }
.breadcrumb > li:first-child::before { font-family: "jurespm"; content: " "; position: relative; top: 4px; color: var(--main-color); padding-left: 0px; padding-right: 5px; }
.breadcrumb > li + li::before { font-family: "jurespm"; content: "z"; position: relative; top: 4px; color: var(--main-color); padding-left: 5px; padding-right: 5px; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* content area */

.outer-container { height: 100%; width: 100%; display: flex; flex-direction: column; justify-content: stretch; }
.header { flex: none; }
.content { position: absolute; bottom: 0; left: 72px; right: 400px; top: 106px; padding: 15px 15px 0px 15px; } /* todo */
.content-3col { position: absolute; bottom: 0; left: 72px; right: 700px; top: 106px; padding: 15px 15px 0px 15px; } /* todo */
.content-import { position: absolute; bottom: 0; left: 72px; right: 0px; top: 106px; padding: 15px 15px 15px 15px; } /* todo */
.content-import .content-header { margin-bottom: 10px; } /* todo */
.content-2 { padding-top: 15px; padding-right: 15px; flex: 1 1 0; display: flex; flex-direction: row; margin-bottom: 15px; overflow: hidden;
			 position: relative; }
.left-side { flex: none; width: 72px; padding-top: 15px; display: flex; flex-direction: column; }
.left-side > div { flex: 1 1 100%; }
.left-side > div.version { flex: none; font-size: 12px; padding: 5px 0 0 15px; }
.left-side > div.version:before { content: "V"; }
.right-side { flex: none; width: 400px; background-color: #dbdbdb; margin-left: 15px; max-width: calc(100vw - 52px - 15px); }
.middle-area { flex: 1 1 100%; padding: 0; overflow-x: auto; position: relative; display: flex; flex-direction: column; }
.middle-area-noscroll { height: 100%; overflow: hidden; align-content: stretch; }
.middle-area-dark { background-color: #dbdbdb; }
.middle-area > div { max-width: 100%; flex: 1 1 0; }



/* dialog content */
.content-inner { max-width: 100%; width: 100%; max-height: 100%; height: 100%;
				 position: relative; padding: 13px 15px 10px 15px; }
.content-header { background-color: var(--main-color); height: 32px; margin-bottom: 2px; flex: none; }
.middle-area .content-header { flex: none; margin-bottom: 2px; }
.content-header-inner { display: flex; flex-direction: row; align-items: center; height: 100%; width: 100%; padding-left: 22px; padding-right: 22px;
						color: var(--main-text-color); font-weight: bold; }
.content-header .file-no { flex: 1 1 0; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
.content-header .file-hidden-icon { padding-right: 5px; }
.content-header .file-hidden-icon img { width: 24px }
.content-header .active-users { padding-right: 0; cursor: pointer; position: relative; flex: none; white-space: nowrap; }
.content-header .active-users:hover .active-user-list{ display: block; }
.content-header .team-active-users { padding-right: 0; cursor: pointer; position: relative; flex: none; white-space: nowrap; display: none; }
.content-header .team-active-users .fa { font-size: 16px; padding-right: 2px; }
.content-header .team-active-users:hover .team-active-user-list{ display: block; }
.content-header .header-info { text-align: right; display: flex; flex-direction: row; align-items: center; color: var(--main-text-color);
							   font-weight: bold; padding-right: 0; font-size: 14px; }
.content-header .file-flag-icon { margin-right: 15px; font-size: 20px; position: relative; top: 4px; }
.content-header .fa.file-flag-icon { top: 0px; }
.content-header .assigned-user { margin-left: 20px; flex: none; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
.active-user-list { position: absolute; top: 32px; right: 0px; border-radius: var(--button-radius); z-index: 10;
					background-color: var(--main-color); padding: 15px 20px 10px 20px; color: var(--main-text-color); display: none; }
.active-user-list:before { content: ""; position: absolute; right: 10px; width: 12px; height: 12px; top: -12px;
						   border-top: 7px solid transparent; border-left: 7px solid transparent; border-right: 7px solid transparent;
						   border-bottom: 7px solid var(--main-color); }
.content-import .active-user-list { right: -7px; }
.content-import .active-user-list:before { left: unset; right: 10px; }
.active-user { margin-bottom: 5px; }
.active-user-me { color: var(--main-text-color); font-size: 600; }
.active-user-sub { color: var(--main-text-color); font-size: 400; }
.active-user-name { white-space: nowrap; }
.active-user-organization { padding-left: 10px; white-space: nowrap; }

.team-active-user-list { position: absolute; top: 32px; right: 0px; border-radius: var(--button-radius); z-index: 10;
				  		 background-color: var(--main-color); padding: 15px 20px 10px 20px; color: var(--main-text-color); display: none; }
.team-active-user-list:before { content: ""; position: absolute; right: 10px; width: 12px; height: 12px; top: -12px;
						 		border-top: 7px solid transparent; border-left: 7px solid transparent; border-right: 7px solid transparent;
						 		border-bottom: 7px solid var(--main-color); }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* main menu */
.main-menu-btn { display: block; border: none; background-color: var(--context-color); width: 60px; height: 60px; margin-bottom: 2px;
				 position: relative; padding-left: 0; padding-right: 0; border-top-right-radius: var(--menu-button-radius);
				 border-bottom-right-radius: var(--menu-button-radius); }
.main-menu-btn svg { shape-rendering: geometricPrecision; }
.main-menu-btn .icon { color: var(--context-text-color); font-size: 32px; display: block; margin: 0 auto 0 auto; padding: 0; position: relative; top: 0px;
					   width: 40px; height: 40px; }
.main-menu-btn .fa { color: var(--context-text-color); font-size: 28px; display: block; margin: 0 auto 0 auto; padding: 0; position: relative; top: 5px; height: 45px; }
.main-menu-btn-label { color: var(--context-text-color); font-size: 9px; display: block; margin: 0 auto 0 auto; padding: 0; position: relative; top: -1px; line-height: 1.2; }
.main-menu-btn-2line .main-menu-btn-label { top: -10px; }
.main-menu-btn .icon path, .main-menu-btn .icon rect, .main-menu-btn .icon polygon { fill: var(--context-text-color)!important; } /*stroke: var(--context-text-color)!important;*/
.main-menu-btn .fa-briefcase { position: relative; display: inline-block; top: 12px; }

.main-menu-btn:hover { background-color: var(--context-highlight-color); }
.main-menu-btn:hover .icon, .main-menu-btn:hover .fa, .main-menu-btn:hover .main-menu-btn-label { color: var(--context-text-highlight-color); }
.main-menu-btn:hover .icon path, .main-menu-btn:hover .icon rect, .main-menu-btn:hover .icon polygon { fill: var(--context-text-highlight-color)!important; } /*stroke: var(--context-highlight-color)!important;*/
.main-menu-badge { background-color: var(--context-text-color); color: var(--context-color); border: 2px solid var(--context-color);
				   font-size: 10px; font-weight: 600; min-width: 20px; width: auto; height: 20px; line-height: 15px; border-radius: 10px;
				   position: absolute; right: 2px; top: 0px; padding-left: 3px; padding-right: 3px;}


/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* loading spinner */
.loading { display: block; position: absolute; z-index: 5000; left: 0; top: 0; bottom: 0; right: 0; background-color: rgba(255,255,255, 0.3); }
.loading .loading-inner { display: table; vertical-align: middle; width: 100%; height: 100%; }
.loading .loading-inner div { display: table-cell; text-align: center; vertical-align: middle; }
.loading span { color: black; font-size: 60px; font-weight: bold; }
.loading-inline { position: absolute; top: 6px; font-size: 20px; padding: 0; margin: 0; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* login */
.login-content { position: absolute; bottom: 0; left: 0; right: 0; top: 49px; }/*top: 106px;*/
.login-form { height: 100%; background-repeat: no-repeat; background-size: cover; background-position: center center; }
.login-message { position: absolute; top: 50px; height: 260px; width: 100%; background-repeat: no-repeat; background-size: contain; background-position: center center; }
.login { text-align: center; position: relative; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); transform: translateY(-50%); }

.login-left { background-color: var(--main-color); display: inline-block; padding: 20px 35px 15px 35px; border-top-left-radius: 4px;
			  border-bottom-left-radius: 4px; height: 155px; vertical-align: top; }
.login-left span { font-size: 90px; color: white; }
.login-left img { width: 110px; }

.login-main { background-color: white; display: inline-block; border-top-right-radius: 4px; border-bottom-right-radius: 4px; position: relative; height: 155px; padding: 0 25px 0 25px; vertical-align: top; text-align: left; }

.login h1 { font-size: 20px; color: var(--main-color); text-align: left; margin: 8px 0 10px 0; }
.login h2 { font-size: 18px; color: var(--main-color); text-align: left; margin: 0px 0 50px 0; }
.login input { border-radius: 4px; border: 1px solid var(--main-color); font-size: 14px; padding: 3px 10px 3px 10px; width: 260px; }
.login-input { margin-bottom: 10px; }
.login-buttons button { display: inline-block; width: 150px; margin-right: 20px; }
.login-buttons button:last-child { margin-left: 20px; margin-right: 0; }

.error-popover-login { display: block; width: 100%; left: 287px; top: 33px; }
.error-popover-pwd { display: block; width: 100%; left: 287px; top: 68px; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* grid */
.list-grid, .static-grid { width: 100%; border: none; min-width: 400px; }
.list-grid-container { width: 100%; max-width: 100%; flex: 1 1 100%; overflow-x: auto; }
.maxheight-list-grid { width: 100%; height: 100%; border: none; }
.fullscreen-grid, .list-grid.fullscreen-grid { min-width: 1200px; border: none; height: 100%; }
.list-grid *:focus, .static-grid *:focus { outline: none; }
.list-grid-header, .static-grid-header { background-color: var(--main-color); color: var(--main-text-color); font-weight: 600; border-right: 1px solid var(--main-text-color); }
.list-grid-header { cursor: pointer; }
.list-grid-cell, .static-grid-cell { border-right: none; }
.list-grid-cell { cursor: pointer; }
.list-grid-cell-main, .static-grid-cell-main { font-weight: bold; border-right: none; }
.static-grid-row-grayed { color: #a4a4a4; }
.static-grid-row-hidden { opacity: 0.5; }
.list-grid-cell-main { cursor: pointer; }
.list-grid-cell-ok { border-right: none; cursor: pointer; text-align: center; }
/*.ui-grid-row:nth-child(odd) .ui-grid-cell { background-color: #e6e6e6; }
.ui-grid-row:nth-child(even) .ui-grid-cell { background-color: white; }
.list-grid .ui-grid-row:nth-child(odd):hover .ui-grid-cell { background-color: #ececec; }
.list-grid .ui-grid-row:nth-child(even):hover .ui-grid-cell { background-color: #f4f4f4; }*/
.ui-grid-row .ui-grid-cell { background-color: white; border-bottom: 1px solid #e6e6e6; }
.list-grid .ui-grid-row:hover .ui-grid-cell { background-color: #f4f4f4; }
.ui-grid-row:nth-child(odd) .ui-grid-cell { background-color: white; }
.ui-grid-row:nth-child(even) .ui-grid-cell { background-color: white; }
.list-grid .ui-grid-row:nth-child(odd):hover .ui-grid-cell { background-color: #f4f4f4; }
.list-grid .ui-grid-row:nth-child(even):hover .ui-grid-cell { background-color: #f4f4f4; }

.ui-grid-menu-close-button { display: none!important; }
.ui-grid-menu-button { background-color: var(--main-color); border: none; border-bottom: 1px solid rgb(212, 212, 212);}
.ui-grid-menu-button .ui-grid-icon-container { color: white; }
.ui-grid-menu-mid { max-height: 500px!important; }
.ui-grid-cell-contents { padding-top: 7px; padding-bottom: 3px; padding-left: 10px; }
.col-grid, .account-col-grid { z-index: 3; }
.ui-grid-percent-col { background-color: #afafaf; position: relative; text-align: center; font-weight: bold; color: white; padding-left: 5px; }
.ui-grid-percent-col img { display: none; }
.ui-grid-percent-col span { z-index: 1; display: block; position: relative; }
.ui-grid-percent-bar { position: absolute; left: 0; top: 0; bottom: 0; z-index: 0; }
/*.ui-grid-percent-col.ui-grid-warning-col span, .ui-grid-percent-col.ui-grid-warning-col .ui-grid-percent-bar { display: none; }*/
.ui-grid-percent-col.ui-grid-warning-col img.warning-icon { display: block; z-index: 10; position: absolute; right: 2px; top: 2px; width: 13px; }

.list-done { color: black; }
.list-done-manual { color: var(--main-color); }
.list-not-confirmed { opacity: 0.65; }
.list-auto-assignments { position: relative; }
.list-auto-assignments span:after { content: "A"; position: absolute; bottom: 7px; right: 5px; font-size: 9px; font-family: "Open Sans", "Helvetica Neue",Helvetica,Arial,sans-serif; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* addresses */
.address-grid-icons img { width: 20px; position: relative; top: 0px; left: -5px; }
.address-grid { height: 100%; }

/* address form */
.global-icon-large { display: inline-block; padding-bottom: 5px; height: 20px; }
.locked-icon-large { display: inline-block; padding-bottom: 5px; height: 20px; }
.address-form-title { width: 15%; }
.address-form-gender { width: 15%; }
.address-form-prename { width: 30%; }
.address-form-number { width: 15%; }
.address-form-zip { width: 20%; }

/* address selection dialog */
.address_selector .modal-dialog { width: 1200px; max-width: 100vw; }
.address_selector .modal-body { height: 70vh; }
.address_selector .modal-header { padding-right: 0; padding-bottom: 0; border-bottom: none; }
.address_selector h3 { height: 38px; }
.address-searchbar { float: right; height: 38px; }
.address-searchbar-inner { background-color: #ebebeb; padding: 10px 15px 0px 15px; display: inline-block; height: 38px; vertical-align: middle; }
.address-searchbar-inner input { height: 26px; width: 250px; margin-right: 20px; display: inline-block; }
.address-searchbar-triangle { width: 38px; height: 38px; border-top: 38px solid white; border-right: 38px solid #ebebeb; display: inline-block; vertical-align: middle; }
.address_selector .grid-container { min-height: 300px; height: 100%; overflow: hidden; }
.address-searchbar-inner button { margin-right: 20px; }
.input-group-addon-clickable { cursor: pointer; }
.address-form-account_number.ng-invalid { outline: 2px solid #ee0000; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* case file */
.case-file-grid-owner { position: relative; }
.case-file-grid-owner svg, .case-file-grid-owner img { width: 30px; position: absolute; top: 0px; left: 0px; }
.case-file-grid-owner svg * { fill: var(--main-color); }
.case-file-grid-owner .case-file-grid-owner-other svg * { fill: #a9a9a9; }
.case-file-grid-owner .case-file-grid-owner-self { filter: drop-shadow(30px 0px var(--main-color)); position: relative; left: -30px; }

.case-file-grid-repair-ok img { position: relative; top: -2px; left: -5px; }
.case-file-grid-repair-ok img.case-file-grid-repair-ok-icon { width: 20px; }
.case-file-grid-repair-ok img.case-file-grid-archive-icon { width: 20px; }

.case-file-grid-select  { width: 35px; }
.case-file-grid-select input[type="checkbox"] { margin: 0; }

.total-ratio { font-weight: bold; }
.total-ratio-good { color: var(--main-color); }
.number-plate { background-color: white; border: 1px solid #afafaf; border-radius: 5px; display: inline-block; min-height: 26px;
				padding: 0; position: relative; top: 2px; }
.number-plate-eu { background-image: url(../img/EU-section.svg); background-repeat: no-repeat; background-size: auto 100%; padding-left: 10px; }
.number-plate-country { display: none; }
.number-plate-eu .number-plate-country { font-family: "Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif; font-size: 8px; font-style: normal; font-weight: bold; color: white;
										 padding: 0; position: absolute; display: block; bottom: 1px; left: 0; width: 12px; text-align: center; }
.number-plate-inner { padding: 0 8px 0 8px; font-family: "NumberPlate"; font-size: 18px; font-style: normal; font-weight: normal; }

.last_activity { padding-left: 15px; font-size: 10px; font-weight: bold; }
.last_activity_name { font-size: 10px; }

/* dialog content */
.case-file-flags { margin-top: 10px; position: relative; z-index: 0; }
.case-file-category { padding-right: 0; font-size: 20px; font-weight: normal; color: var(--main-color); max-width: 350px; overflow: hidden;
					  text-overflow: ellipsis; white-space: nowrap; }
.case-file-flag-icon { margin-right: 8px; position: relative; top: 5px; cursor: default; display: inline-block; }
.liability-limit-value { position: absolute; color: white; font-size: 8px; font-weight: 600; left: 50%; transform: translateX(-50%); bottom: 13px; z-index: 1; }

.case-file-info-text { vertical-align: middle; position: relative; top: -1px; }
.case-file-info-text svg { height: 17px; width: 17px; position: relative; left: -2px; }
.case-file-info-text svg, .case-file-info-text span { display: inline-block; vertical-align: middle; }

hr { border-color: #afafaf; margin-top: 0; margin-bottom: 10px; width: 100%; flex: none; }
.modal-dialog hr { margin-top: 0; }

.case-file-form-group { margin-bottom: 0; }
.case-file-form-group.form-control-group-margin { margin-bottom: 20px; }
.case-file-label-nondescript { font-weight: normal; }


/* visibility icons */
.visibility-access-container { display: flex; flex-direction: row; flex: none; }
.visibility-access-inner { display: flex; flex-direction: column; }
.visibility-access-top { display: flex; flex-direction: row; }
.visibility-access-bottom { font-size: 10px; font-weight: 200; color: #222; margin-top: 10px; white-space: nowrap; }
.visibility-access-owner { width: 46px; height: 46px; border-radius: 23px; background-color: white; margin-right: 30px; margin-top: 3px; }
.visibility-access-owner path { fill: #53af31; }
.visibility-access { width: 46px; height: 46px; border-radius: 23px; background-color: #ff2300; position: relative; cursor: pointer;
					 margin-right: 13px; margin-top: 3px; }
.visibility-access .visibility-noaccess { position: absolute; z-index: 1; background-color: white; width: 6px; height: 43px; left: 21px;
										  top: 3px; border: 2px solid #ff2300; transform: rotate(45deg); }
.visibility-access.visibility-access-visible { background-color: #53af31; }
.visibility-access.visibility-access-visible .visibility-noaccess { display: none; }
.visibility-access.visibility-access-disabled { background-color: #9e9e9e; }
.visibility-access.visibility-access-disabled .visibility-noaccess { border-color: #9e9e9e; }
.visibility-access-doc { padding-left: 10px; }
.visibility-access-doc .visibility-access { width: 30px; height: 30px; border-radius: 15px; margin-right: 6px; }
.visibility-access-doc .visibility-access svg { width: 30px; height: 30px; }
.visibility-access-doc .visibility-access .visibility-noaccess { width: 6px; height: 29px; left: 12px; top: 1px; }
.visibility-access-doc .visibility-access-bottom { margin-top: 3px; }
.visibility-access-doc-tpl { padding-left: 5px; }

.visibility-access-mini { display: flex; flex-direction: row; flex-wrap: nowrap; }
.visibility-access-mini .visibility-access { width: 14px; height: 14px; border-radius: 7px; margin-right: 3px; margin-top: 0px; flex: none; }
.visibility-access-mini .visibility-access svg { width: 100%; height: 100%; position: relative; top: -1.5px; }
.visibility-access-mini .visibility-access .visibility-noaccess { width: 3px; height: 14px; left: 5px; top: 0px; border: 1px solid #ff2300; }

/* upper/lower split container */
/* todo: flexbox, no table; split-area required? (included in middle-area?) */
.split-area { display: table; padding: 12px 15px 15px 15px; width: 100%; }
.split-upper-area { display: table-row; height: 1px; width: 100%; }
.split-lower-area { display: table-row; width: 100%; height: 100%; }

/* case file upper/lower split container */
.n-split-area { display: block; flex-direction: column; height: 100%; padding: 12px 15px 15px 15px; width: 100%; max-width: 100%; background-color: #dbdbdb;
				position: relative; max-height: calc(100% - 34px); height: calc(100% - 34px); overflow-y: auto; }
.case_file_overview_form { height: 100%; }
.case_file_overview_form .form-control-group p { padding: 5px 0 1px 0; min-height: 0px; }
.case_file_overview_form label.control-label { padding: 5px 0 0 0; }
.phone-link { color: black; }
.list-grid.case_file_damage-grid { margin-top: 2px; min-width: 800px; width: auto; max-height: 50vh; margin-bottom: 20px; }

.accordion-item:before, .accordion-item:after { content: ""; display: block; clear: both; }
.accordion-item .accordion-content { display: none; overflow: hidden; }
.accordion-item.accordion-open .accordion-content { display: flex; }
.accordion-header { color: var(--main-color); text-transform: uppercase; font-size: 16px; font-weight: 600; padding: 8px 0 8px 0; margin: 20px 0 10px 0; cursor: pointer;
					border-top: 1px solid #afafaf; border-bottom: 1px solid #afafaf; }
.accordion-header .fa { font-size: 20px; width: 16px; text-align: center; }

.scoring-area .accordion-content { padding: 10px 20px 50px 20px; }
.scoring-header { display: flex; flex-direction: row; margin-bottom: 30px; }
.scoring-icon { width: 54px; height: 54px; flex: none; display: flex; align-items: center; justify-content: center; }
.scoring-icon svg path { fill: white; flex: none; }
.scoring-generic { display: flex; flex-direction: column; margin-left: 15px; flex: 1 1 0; }
.scoring-generic-header { font-weight: 600; font-size: 16px; }
.scoring-generic-text { font-size: 14px; font-weight: bold; }
.scoring-hint-header { font-size: 14px; font-weight: bold; border-bottom: 1px solid #afafaf; padding: 0 0 8px 15px; margin-bottom: 8px; position: relative; }
.scoring-hint-header:before { content: "\00f107"; font-family: "FontAwesome"; position: absolute; left: 1px; top: 1px; }
.scoring-hint-text { font-size: 14px; padding: 0 15px 0 15px; }
.scoring-hint-text br { margin-bottom: 8px; }
.scoring-repairable .scoring-generic-header { color: var(--main-color); }
.scoring-repairable130 .scoring-generic-header { color: #4f99b5; }
.scoring-constructive_total_loss .scoring-generic-header { color: #b626cd; }
.scoring-writeoff .scoring-generic-header { color: #eb3814; }
.scoring-repairable .scoring-icon { background-color: var(--main-color); }
.scoring-repairable130 .scoring-icon { background-color: #4f99b5; }
.scoring-constructive_total_loss .scoring-icon { background-color: #b626cd; }
.scoring-writeoff .scoring-icon { background-color: #eb3814; }

/* case file container */
.case-file-container { container: case_file_container / size; }
.case-file-container .col-sm-9 p { white-space: nowrap; }
.case-file-container .col-sm-9 p > span { white-space: wrap; }

/* share infos */
.case-file-shared { position: relative; top: 9px; }
.case-file-shared-label { position: relative; }
.case-file-shared-error { display: block; width: 15px; position: absolute; right: -5px; top: 1px; cursor: pointer; }
.case-file-shared-error img { width: 15px; }
.reminder-shared-error { display: block; width: 15px; position: absolute; right: 1px; top: -6px; cursor: pointer; z-index: 10;}
.reminder-shared-error img { width: 15px; }
.document-shared-error { display: block; width: 15px; position: absolute; right: -2px; top: -8px; cursor: pointer; z-index: 10;}
.document-shared-error img { width: 15px; }
.list-shared-error { display: inline-block; width: 15px; position: relative; right: 8px; top: -5px; }
.list-shared-error img { width: 12px; }

/* info badges */
.info-badges { margin-bottom: 20px; }
.info-badge .info-badge-inner { border: 1px solid #afafaf; border-radius: 6px; display: flex;
		flex-direction: row; align-items: center; padding: 10px 5px 10px 15px; width: 100%; min-height: 62px; }
.info-badge-icon { position: relative; }
.info-badge-icon svg, .info-badge-icon > i { display: block; }
.info-badge span { display: block; padding-left: 10px; width: 100%; }
.info-badge .mandator-clash { font-size: 24px; }
.info-badge .case-file-for-closing svg path{ fill: var(--main-color); }
.info-badge-error { display: block; width: 15px; position: absolute; right: -3px; top: -1px; cursor: pointer; }
.info-badge-error img { width: 15px; }
.info-badge-text { font-weight: 500; }
.info-badge-textlist-header { margin-top: 5px; text-decoration: underline; }

/* case file editor */
.casefileeditor_area { display: flex; flex-direction: column; container: casefileeditor_area / size; }
.casefileeditor_area_inner { flex: 1 1 auto; overflow: auto; padding: 0 15px 0 15px; }
.casefileeditor_footer { flex: none; height: 75px; display: flex; flex-direction: row; padding: 15px 15px 0 15px; }
.casefileeditor_footer_left { text-align: left; flex: 1 1; }
.casefileeditor_footer_right { text-align: right; flex: 1 1; }
.casefileeditor_footer_left button, .casefileeditor_footer_right button { display: inline-block; }
.casefileeditor_tabheader { list-style: none; padding: 20px 40px 0 40px; margin: 0; display: flex; flex-direction: row; }

.casefileeditor_tabheader li { height: 82px; padding: 7px 10px 8px 14px; margin: 0 2px 0 2px; flex: none; cursor: pointer; position: relative; background-color: white; width: 160px; color: #777777; }
.casefileeditor_tabheader li:after { content: ""; width: 18px; height: 18px; border-right: 18px solid white; border-top: 18px solid #dbdbdb; position: absolute; left: 0; top: 0; }
.tabheader_num { font-size: 28px; font-weight: bold; display: block; }
.tabheader_title { font-size: 14px; font-weight: bold; display: block; text-overflow: ellipsis; overflow: hidden; padding-top: 6px; transform: none; position: static; margin: 0; max-width: none; }
.casefileeditor_tabheader.tab_small li { height: 112px; padding: 7px 10px 8px 14px; margin: 0 2px 0 2px; flex: none; cursor: pointer; position: relative; background-color: white; width: 60px; color: #777777; line-height: 1.2; }
.tab_small .tabheader_num { font-size: 28px; font-weight: bold; display: block; position: absolute; left: 10px; bottom: 2px; }
.tab_small .tabheader_title { font-size: 14px; font-weight: bold; display: block; text-overflow: ellipsis; overflow: hidden; transform-origin: left bottom; transform: rotate(-90deg); position: absolute; left: 0; bottom: 0; margin-left: calc(100% - 5px); margin-bottom: 10px; max-width: 95px; overflow: hidden; text-overflow: ellipsis; }
ul.casefileeditor_tabheader li.tab_selected { height: 82px; padding: 7px 10px 8px 14px; margin: 0 2px 0 2px; flex: none; cursor: pointer; position: relative; background-color: white; width: 160px; color: #777777; }
ul.casefileeditor_tabheader li.tab_selected:after { content: ""; width: 18px; height: 18px; border-right: 18px solid white; border-top: 18px solid #dbdbdb; position: absolute; left: 0; top: 0; }
ul.casefileeditor_tabheader .tab_selected .tabheader_num { font-size: 28px; font-weight: bold; display: block; position: static; }
ul.casefileeditor_tabheader .tab_selected .tabheader_title { font-size: 14px; font-weight: bold; display: block; text-overflow: ellipsis; overflow: hidden; padding-top: 6px; transform: none; position: static; margin: 0; max-width: none; }
ul.casefileeditor_tabheader li.tab_selected { background-color: var(--main-color); color: white; }
ul.casefileeditor_tabheader li.tab_selected:after { content: ""; border-right-color: var(--main-color); }
ul.casefileeditor_tabheader.tab_small li.tab_selected { margin-top: 30px; }

.casefileeditor_tabcontent > div { display: none; }
.casefileeditor_tabcontent > div.tab_selected { display: block; }
.casefileeditor_tabcontent h1 { font-size: 16px; font-weight: 600; text-transform: uppercase; color: var(--main-color); margin: 0 0 20px 0; padding: 20px 13px 20px 13px; border-top: 1px solid #a4a4a4; border-bottom: 1px solid #a4a4a4; }
.casefileeditor_tabcontent .tab_special_container { margin-bottom: 25px; }
.casefileeditor_tabcontent .tab_col_container { display: flex; flex-direction: row; padding: 0 45px 40px 45px; column-gap: 40px; }
.casefileeditor_tabcontent .tab_col { flex: 1 1 100%; }
.tab_field_container { display: flex; flex-direction: row; align-items: center; margin: 0 0 7px 0; }
.tab_field_important .tab_field_content { box-shadow: 0 0 4px 2px rgba(83, 175, 49, 1); border-radius: 4px; }
.tab_field_br { margin: 0 0 18px 0; }
.tab_field_label { flex: 10 1 0; text-align: right; margin: 0 15px 0 0; max-width: none; display: block; overflow: hidden; text-overflow: ellipsis; }
.tab_field_label_small { font-size: 10px; font-weight: 200; color: #222; }
.tab_field_group_content { display: flex; flex-direction: row; }
.tab_field_group_content .tab_field_field { flex: 1 1 auto; margin-right: 5px; }
.tab_field_group_content .tab_field_field:last-child { margin-right: 0; }

.tab_field_content { flex: 30 1 0; }
.tab_field_radio { margin-bottom: 3px; }
.tab_field_radio label.radio-inline { padding: 0 0 0 18px; min-height: 0; margin: 0 20px 0 0; }
.tab_field_radio label.radio-inline:last-child { margin-right: 0; }
.tab_field_radio .radio-inline input[type="radio"] { margin: 4px 0 0 -18px; }
.tab_field_checkbox { margin-bottom: 3px; }
.tab_field_checkbox div.checkbox { padding: 0; min-height: 0; }
.tab_field_address .select-address { display: block; }
.tab_field_dialog_button button { vertical-align: baseline; }
.tab_field_timestamp_button_inner { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; }
.tab_field_timestamp_button_inner .tab_field_timestamp_button_text { display: inline-block; margin-bottom: 5px; margin-top: 5px; }
.tab_field_timestamp_button_inner .tab_field_timestamp_button_button { text-align: right; flex: 1 1 0; }

.tab_field_timestamp_button_inner_active { display: flex; flex-direction: row; align-items: center; }
.tab_field_timestamp_button_inner_active .tab_field_timestamp_button_text { flex: 1 1 0; }
.tab_field_timestamp_button_inner_active .tab_field_timestamp_button_text span { padding-right: 10px; }
.tab_field_timestamp_button_inner_active .tab_field_timestamp_button_icon { flex: none; padding-right: 10px; }
.tab_field_timestamp_button_inner_active a { color: #222; text-decoration: underline; cursor: pointer; font-weight: 600; }
.tab_field_timestamp_button_inner_active a:hover { color: #222; text-decoration: underline; }

.mandator-clash { color: #ea3814; padding-right: 10px; }

/* old styles for case file editor */
.casefile-tabs .nav-tabs { padding: 0 20px 20px 20px; margin-bottom: 15px; border-bottom: 1px solid #afafaf; }
.casefile-tabs .nav-tabs li { width: 140px; height: 70px; display: table; margin-right: 14px; }
.casefile-tabs .nav-tabs li a { border: 1px solid white; border-radius: 4px; background-color: white; display: table-cell; vertical-align: middle; padding: 10px 15px 10px 15px; }
.casefile-tabs .nav-tabs li h2, .casefile-tabs .nav-tabs li h3 { font-weight: bold; margin: 0; text-align: center; display: block; color: #888; }
.casefile-tabs .nav-tabs li h2 { font-size: 30px; }
.casefile-tabs .nav-tabs li h3 { font-size: 12px; margin-top: 10px; }
.casefile-tabs .nav-tabs li.active a { border-color: var(--main-color); background-color: var(--main-color); }
.casefile-tabs .nav-tabs li.active h2, .casefile-tabs .nav-tabs li.active h3 { color: white; }

.prev-next-container { padding: 0; display: block; height: 32px; flex-grow: 0; }
.prev-next-container .left { float: left; }
.prev-next-container .right { float: right; }
.split-lower-area form { border-top: 1px solid #afafaf; margin-top: 5px; padding-top: 20px; width: 100%; height: 100%; display: flex; flex-direction: column; }
.split-lower-area .notes-container { display: flex; flex-direction: column; width: 100%; flex-grow: 1; }
.split-lower-area .progress-notes { padding: 10px 0 0 0; height: 90px; width: 100%; flex-grow: 0; display: flex; flex-direction: column; }
.split-lower-area .notes { padding: 0; flex-grow: 1; display: flex; flex-direction: column; }
.split-lower-area form label { flex-grow: 0; }
.split-lower-area form .notes-wrapper { display: flex; flex-direction: column; flex-grow: 1; }
.split-lower-area form textarea { height: 100%; resize: none; flex-grow: 1;}
.file-replacement-vat { width: 100px; }
.file-terminal-vat { width: 100px; }

/* claimable damage editor */
.damage-grid { margin-top: 2px; max-height: 50vh; min-width: 700px; }
.claimable_damage_editor .modal-dialog { margin-top: 170px; width: 1300px; }
.damage-value-grid { margin-top: 2px; height: 250px; width: 100%; border: none; } /*max-width: calc(100% - 35px); */
.claimable_damage_editor h4 { padding: 10px 0 8px 0; margin: 0; font-weight: normal; font-size: 14px; }
.claimable_damage_editor h4 > button { position: relative; top: -10px; }
.claimable_damage_payment_editor { margin-top: 200px; }

/* invoice entry editor */
.invoice-grid { margin-top: 2px; min-width: 700px; flex: 1 1 0; border: none; overflow: hidden; }
.invoice_entry_editor .modal-dialog { margin-top: 170px; width: 1400px; }
.invoice-grid-owner { position: relative; }
.invoice-grid-owner svg, .invoice-grid-owner img { width: 30px; position: absolute; top: 0px; left: 0px; }
.invoice-grid-owner svg * { fill: var(--main-color); }
.invoice-grid-owner .invoice-grid-owner-other svg * { fill: #a9a9a9; }
.invoice-grid-owner .invoice-grid-owner-self { filter: drop-shadow(30px 0px var(--main-color)); position: relative; left: -30px; }

/* case file account */
.account-grid-container { width: 100%; }
.account-grid { margin-top: 2px; max-height: 25vh; }
.hr-top { margin-top: 5px; margin-bottom: 10px; }

.account_entry_editor .modal-dialog { width: 1400px; }
.account-entry-left { border-right: 1px solid #afafaf; }

.case-file-account h4 { margin-top: 0; font-size: 16px; }
.case-file-account h4 .btn-icon, .case-file-damages h4 .btn-icon, .case-file-invoice h4 .btn-icon { width: 30px; position: relative; top: -7px; }
.account-summary { font-size: 12px; width: 100%; margin-bottom: 10px; }
.account-summary .col0, .account-summary .col2, .account-summary .col4 { width: 15%; }
.account-summary .col1, .account-summary .col3, .account-summary .col5 { width: 18%; }
.account-row-pending { color: #999999; }

/* documents */
.doc-list-container { height: 100%; }

.doc-split-area { display: flex; flex-direction: column; height: 100%; padding: 12px 15px 10px 15px; width: 100%; max-width: 100%; background-color: #dbdbdb;
				position: relative; max-height: calc(100% - 34px); height: calc(100% - 34px); overflow-y: none; }
.doc-split-lower-area { flex: 1 1 0; }
.doc_thumbs_left, .doc_thumbs_right { padding-top: 25%; height: 100%; }
.doc_thumbs_left { position: absolute; left: 5px; }
.doc_thumbs_right { position: absolute; right: 5px; }
.doc_thumbs_left a, .doc_thumbs_right a { display: block; width: 25px; height: 75px; z-index: 5; cursor: pointer; }
.doc_thumbs_left a span, .doc_thumbs_right a span { font-size: 30px; }
.doc_thumbs_left a:hover, .doc_thumbs_right a:hover { text-decoration: none; }
.doc_thumbs_left a:hover span, .doc_thumbs_right a:hover span { color: var(--main-color); }

.doc_thumb_list { position: relative; margin: 0 30px 0 30px; width: calc(100% - 60px); height: 100%; overflow: hidden; }
.doc_thumb_list_inner { position: absolute; left: 0; top: 0; bottom: 0; right: 0; overflow-y: hidden; overflow-x: auto; z-index: 1; display: flex; flex-direction: row; flex-wrap: nowrap; padding-bottom: 20px; }
.doc_thumb { display: flex; flex-direction: row; position: relative; height: 100%; }
.doc_thumb_list > .doc_thumb_list_inner > .doc_thumb { height: calc(100% - 10px); }
.doc_thumb_inner { display: flex; flex-direction: column; margin-left: 10px; margin-right: 10px; position: relative; }
.doc_attachment { margin-bottom: 20px; }
.doc_attachment:after { content: ""; display: block; position: absolute; bottom: -20px; left: calc(50% - 2px); width: 4px; height: 20px; background-color: #959896; }
.doc_attachment_line { display: block; position: absolute; bottom: -20px; left: -20px; height: 4px; width: calc(100% + 20px); background-color: #959896; }
.doc_thumb:last-child .doc_attachment .doc_attachment_line { width: calc(50% + 20px); }
.doc-preview-container { width: fit-content; height: fit-content; position: relative; z-index: 3; }
.doc_thumb .doc-preview { height: calc(100% - 57px); border: 3px solid #959896; padding: 3px; cursor: pointer; z-index: 3; background-color: #dbdbdb; }
.doc-draft { position: absolute; z-index: 3; opacity: 0.25; color: #959896; left: 0; top: -65px; width: 100%; height: 100%;
			 display: flex; align-items: center; justify-content: center; overflow: hidden; cursor: pointer; text-align: center; }
.doc-draft span { font-size: 130px; font-weight: bold; text-transform: uppercase; line-height: 1; display: block; flex: 1 1 auto; transform-origin: center center; transform: rotate(-60deg); cursor: pointer; }
.doc_stack_button { background-color: var(--main-color); position: absolute; right: 0; bottom: 0; width: 30px; height: 30px; color: white; text-align: center; cursor: pointer; z-index: 5; }
.doc_stack_button .fa { display: block; font-size: 23px; line-height: 30px; position: relative; left: 1px; }
.doc_properties { display: flex; flex-direction: row; margin-bottom: 2px; height: 55px; position: relative; }
.doc_incoming_outgoing_icon { width: 30px; height: 100%; flex: none; }
.doc_incoming_outgoing_icon_inner { background-color: #5a99b3; height: 25px; margin-top: 30px; }
.doc_incoming_outgoing_icon:before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 30px; height: 30px; border-left: 30px solid transparent; border-bottom: 30px solid #5a99b3; }
.doc_incoming_outgoing_icon img { display: block; position: relative; left: 15px; top: -7px; }
.doc_properties_left { display: flex; flex-direction: column; flex: 1 1 auto; padding: 10px 0 5px 15px; background-color: #5a99b3; min-width: 0; color: white; }
.doc_properties_right { display: flex; flex-direction: column; flex: 1 0 auto; text-align: right; padding: 12px 15px 5px 5px; background-color: #5a99b3; color: white; }
.doc_properties .doc-name { font-size: 16px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.doc_properties .doc-attachments { font-size: 12px; font-weight: 400; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.doc_properties .doc-category { font-size: 12px; font-weight: 400; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.doc_properties .doc-date { font-size: 12px; font-weight: 400; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.doc_outgoing .doc_properties_left, .doc_outgoing .doc_properties_right { background-color: var(--main-color); color: white; }
.doc_outgoing .doc_incoming_outgoing_icon:before { border-bottom-color: var(--main-color); }
.doc_outgoing .doc_incoming_outgoing_icon_inner { background-color: var(--main-color); }
.doc_outgoing .doc_thumb .doc_properties_left, .doc_outgoing .doc_thumb .doc_properties_right { background-color: #c9a51d; }
.doc_outgoing .doc_thumb .doc_incoming_outgoing_icon:before { border-bottom-color: #c9a51d; }
.doc_outgoing .doc_thumb .doc_incoming_outgoing_icon_inner { background-color: #c9a51d; }
.doc_page_count { position: absolute; bottom: 10px; left: 0; width: 100%; text-align: center; color: var(--main-color); text-shadow: 1px 1px 1px white, -1px -1px 1px white, -1px 1px 1px white, 1px -1px 1px white; font-weight: 600; z-index: 4; }
.doc_visibility_container { position: absolute; bottom: 45px; left: 0; display: flex; flex-direction: row; width: 100%; height: 40px;
							justify-content: center; z-index: 4; }
.doc-visibility-access { width: 30px; height: 30px; border-radius: 15px; background-color: #ff2300; position: relative; margin-left: 4px; margin-right: 4px;
						 border: 2px solid #dbdbdb; }
.doc-visibility-access svg { width: 26px; height: 26px; }
.doc-visibility-access .doc-visibility-noaccess { position: absolute; z-index: 1; background-color: white; width: 5px; height: 25px; left: 10px; top: 0px; border: 2px solid #ff2300; transform: rotate(45deg); }
.doc-visibility-access.doc-visibility-access-visible { background-color: var(--main-color); }
.doc-visibility-access.doc-visibility-access-visible .doc-visibility-noaccess { display: none; }
.doc-visibility-access.doc-visibility-access-disabled { background-color: #9e9e9e; }
.doc-visibility-access.doc-visibility-access-disabled .doc-visibility-noaccess { border-color: #9e9e9e; }
.doc_shared_container { position: absolute; bottom: 45px; left: 0; display: flex; flex-direction: row; width: 100%; height: 40px; justify-content: end; z-index: 4; padding-right: 20px; }
.doc-shared { width: 30px; height: 30px; border-radius: 15px; background-color: #ffffff; position: relative; margin-left: 4px; margin-right: 4px; border: 2px solid #dbdbdb;
			  display: flex; align-items: center; justify-content: center; }
.doc-shared svg { width: 16px; height: 16px; }

.doc_stack_decoration { display: none; position: absolute; border: 3px solid #959896; padding: 3px; width: 100%; height: calc(100% - 55px); background-color: white; }
.doc_stack_decoration1 { bottom: -5px; right: -5px; z-index: 2; }
.doc_stack_decoration2 { bottom: -10px; right: -10px; z-index: 1; }
.doc_stack_closed .doc_stack_decoration { display: block; }
.doc_stack_closed > .doc_thumb { display: none; }

.doc_properties_edit { height: 40px; display: flex; flex-direction: row; align-items: start; flex: 1 1 100%; }
.doc_properties_edit > .doc-category { width: 25%; }
.doc_properties_edit > .doc-date { width: 130px; }
.doc-category.ui-select-bootstrap > .ui-select-choices { max-height: 600px; width: 200%; max-width: min(85vw, 800px); }
.doc_properties_edit .ui-select-choices { max-width: 100vw; }
.doc_properties_edit.tabbar-select-150 > .ui-select-choices { width: 150%; }
.doc_properties_edit .doc-name, .doc_properties_edit .doc-category { flex: 1 1 auto; }
.doc_properties_edit .doc-date { flex: none; }
.doc_properties_edit .doc-name, .doc_properties_edit .doc-category { min-width: 50px; }
.doc_properties_edit .doc-viewer-zoom { margin-left: 30px; }

/* document upload/search toolbar */
.doc-search-add-toolbar { margin-top: 0; display: flex; flex-direction: row; justify-content: flex-end; }
.doc-search-add-toolbar-inner { display: flex; flex-direction: row; align-items: center; width: 100%; max-width: 1000px; column-gap: 20px; }
.doc-search-add-toolbar-incoming_outgoing { flex: none; }
.doc-search-add-toolbar-category { flex: 1 1 auto; width: 100%; }
.doc-search-add-toolbar-search { flex: 1 1 auto; width: 100%; }
.doc-search-add-toolbar-add { flex: none; }
/*.doc-search-add-toolbar-inner { float: right; padding: 10px 15px 0px 15px; display: inline-block; height: 38px; vertical-align: middle; }*/
.doc-search-add-toolbar-inner input[type="text"] { height: 26px; width: 100%; display: block; }
.doc-search-add-toolbar-inner button { margin: 0; position: static; top: unset; }
.doc-search-add-toolbar-inner .tabbar-select { width: 100%; height: 26px; position: relative; top: unset; }

/* document pdf viewer */
.doc-pdf-container { display: flex; flex-direction: row; height: 100%; padding: 7px 15px 15px 15px; }
.doc-pdf-container-left { width: 16%; min-width: 210px; margin-right: 15px; overflow: hidden; display: flex; flex-direction: column; flex: none;
						  transition: width 0.1s ease-in-out; transition-property: width, min-width; }
.doc-pdf-container-left.closed { width: 32px; min-width: 32px; transition: width 0.1s ease-in-out; transition-property: width, min-width; }
.doc-pdf-container-middle { flex: 1 1 auto; display: flex; flex-direction: column; container: doc_pdf_container / size; }
.doc-pdf-toolbar { width: 100%; margin-top: 0; display: flex; flex-direction: row; align-content: center; margin-bottom: 15px; }
.doc-pdf-toolbar-buttons { border-left: 1px solid #c0c0c0; padding-left: 20px; margin-left: 10px; display: flex; flex-direction: row;
						   flex-wrap: nowrap; column-gap: 5px; align-items: start; }
.doc-pdf-name-cat { align-items: start; }

.doc-pdf-viewer-container { flex: 1 1 auto; position: relative; width: 100%; height: 100%; }
.doc-pdf-viewer { position: absolute; width: 100%; height: 100%; overflow-y: auto; }
.doc-pdf-viewer .pdf { position: absolute; left: 0; top: 0; bottom: 0; right: 0; padding: 0; }
.doc-pdf-viewer .pdf .page { margin: 0 auto 20px auto; position: relative; }

/* mini document list */
.doc_mini_thumb_header { height: 50px; flex: none; display: flex; flex-direction: row; align-items: start; }
.doc_mini_thumb_header .arrow-button span { font-size: 20px; }
.doc_mini_thumb_list { position: relative; width: 100%; height: 100%; overflow: hidden; flex: 1 1 100%; transition: width 0.1s ease-in-out; }
.doc-pdf-container-left.closed .doc_mini_thumb_list { width: 0; transition: width 0.1s ease-in-out; }

.doc_mini_thumb_list_inner { position: absolute; left: 0; top: 0; bottom: 0; right: 0; overflow-x: hidden; overflow-y: auto; z-index: 1; display: flex; flex-direction: column; flex-wrap: nowrap; }
.doc_mini_thumb { display: flex; flex-direction: column; position: relative; width: 100%; }
.doc_mini_thumb_list > .doc_mini_thumb_list_inner > .doc_mini_thumb { width: calc(100% - 10px); }
.doc_mini_thumb_inner { display: flex; flex-direction: column; margin-top: 10px; margin-bottom: 10px; position: relative; }
.doc_mini_thumb_inner .doc_mini-preview-container { position: relative; }
.doc_mini_thumb_inner.marked_remove > .doc_mini-preview-container:before { content: ""; background-color: rgba(0, 0, 0, 0.1); z-index: 1;
											 width: 100%; height: 100%; position: absolute; left: 0; top: 0; }
.doc_mini_thumb_inner.marked_remove > .doc_mini-preview-container:after { content: ""; background-image: url('../img/icon_delete_document.svg'); background-repeat: no-repeat;
											z-index: 2; width: 100%; height: 100%; position: absolute; left: 0; top: 0;
											background-position: center center; background-size: 40% 40%; }
.doc_mini_attachment { margin-left: 20px; }
.doc_mini_attachment:after { content: ""; display: block; position: absolute; left: -20px; top: calc(50% + 20px); height: 4px; width: 20px; background-color: #959896; }
.doc_mini_attachment_line { display: block; position: absolute; left: -20px; top: -20px; width: 4px; height: calc(100% + 20px); background-color: #959896; }
.doc_mini_thumb:last-child .doc_mini_attachment_line { height: calc(50% + 40px); }
.doc_mini_thumb .doc_mini-preview { width: 100%; border: 3px solid #959896; padding: 3px; cursor: pointer; z-index: 3; background-color: #dbdbdb;
									min-height: 100px; }
.doc_mini_thumb.doc_mini_current > .doc_mini_thumb_inner > .doc_mini-preview { border-color: var(--main-color); }
.doc_mini-draft { position: absolute; z-index: 3; opacity: 0.25; color: #959896; left: 0; bottom: 0; width: 100%; height: calc(100% - 57px); display: flex; align-items: center; justify-content: center; overflow: hidden; cursor: pointer; }
.doc_mini-draft span { font-size: 50px; font-weight: bold; text-transform: uppercase; line-height: 1; display: inline-block; flex: 1 1 auto; transform-origin: center center; transform: rotate(-60deg); cursor: pointer; }
.doc_mini_stack_button { background-color: var(--main-color); position: absolute; left: 0; bottom: 0; width: 25px; height: 25px; color: white; text-align: center; cursor: pointer; z-index: 5; }
.doc_mini_stack_button .fa { display: block; font-size: 18px; line-height: 25px; position: relative; left: 1px; }
.doc_mini_properties { margin-bottom: 2px; line-height: 1.3; display: flex; flex-direction: row; }
.doc_mini_incoming_outgoing_icon { width: 30px; height: 100%; flex: none; }
.doc_mini_incoming_outgoing_icon_inner { background-color: #5a99b3; height: 25px; margin-top: 30px; }
.doc_mini_incoming_outgoing_icon:before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 30px; height: 30px; border-left: 30px solid transparent; border-bottom: 30px solid #5a99b3; }
.doc_mini_incoming_outgoing_icon img { display: block; position: relative; left: 15px; top: -7px; }
.doc_mini_properties_left { min-width: 0; flex: 1 1 auto; background-color: #5a99b3; padding: 4px 0 0 10px; }
.doc_mini_properties .doc_mini-name { font-size: 14px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: white; margin-bottom: 1px; margin-top: 1px; }
.doc_mini_properties .doc_mini-category { font-size: 10px; font-weight: 400; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: white; }
.doc_mini_properties .doc_mini-date { font-size: 11px; font-weight: 400; color: white; }
.doc_mini_outgoing .doc_mini_properties_left { background-color: var(--main-color); color: white; }
.doc_mini_outgoing .doc_mini_incoming_outgoing_icon:before { border-bottom-color: var(--main-color); }
.doc_mini_outgoing .doc_mini_incoming_outgoing_icon_inner { background-color: var(--main-color); }
.doc_mini_outgoing .doc_mini_thumb .doc_mini_properties_left { background-color: #c9a51d; }
.doc_mini_outgoing .doc_mini_thumb .doc_mini_incoming_outgoing_icon:before { border-bottom-color: #c9a51d; }
.doc_mini_outgoing .doc_mini_thumb .doc_mini_incoming_outgoing_icon_inner { background-color: #c9a51d; }
.doc_mini_outgoing .doc_mini_thumb { filter: saturate(0.7); opacity: 0.9; }
.doc_mini_page_count { position: absolute; bottom: 10px; left: 0; width: 100%; text-align: center; color: var(--main-color); text-shadow: 1px 1px 1px white, -1px -1px 1px white, -1px 1px 1px white, 1px -1px 1px white; font-weight: 600; z-index: 4; }
.doc_mini_visibility_container { position: absolute; bottom: 65px; left: 0; display: flex; flex-direction: row; flex-wrap: wrap; width: 100%;
								 height: 25px; justify-content: center; z-index: 4; padding: 0 5px 0 5px; }
.doc_mini-visibility-access { width: 28px; height: 28px; border-radius: 14px; background-color: #ff2300; position: relative; margin-right: 2px; margin-left: 2px; border: 2px solid #dbdbdb; }
.doc_mini-visibility-access svg { width: 24px; height: 24px; }
.doc_mini-visibility-access .doc_mini-visibility-noaccess { position: absolute; z-index: 1; background-color: white; width: 5px; height: 22px; left: 9px; top: 2px; border: 2px solid #ff2300; transform: rotate(45deg); }
.doc_mini-visibility-access.doc_mini-visibility-access-visible { background-color: var(--main-color); }
.doc_mini-visibility-access.doc_mini-visibility-access-visible .doc_mini-visibility-noaccess { display: none; }
.doc_mini-visibility-access.doc_mini-visibility-access-disabled { background-color: #9e9e9e; }
.doc_mini-visibility-access.doc_mini-visibility-access-disabled .doc_mini-visibility-noaccess { border-color: #9e9e9e; }
.doc_mini_stack_decoration { display: none; position: absolute; border: 3px solid #959896; padding: 3px; width: 100%; height: calc(100% - 55px); background-color: white; }
.doc_mini_stack_decoration1 { bottom: -5px; right: -5px; z-index: 2; }
.doc_mini_stack_decoration2 { bottom: -10px; right: -10px; z-index: 1; }
.doc_mini_stack_closed .doc_mini_stack_decoration { display: block; }
.doc_mini_stack_closed > .doc_mini_thumb { display: none; }
.doc_mini_shared_container { position: absolute; bottom: 35px; left: 0; display: flex; flex-direction: row; width: 100%; height: 25px; justify-content: end; z-index: 4; padding-right: 20px; }
.doc_mini-shared { width: 28px; height: 28px; border-radius: 14px; background-color: #ffffff; position: relative; margin-right: 2px; margin-left: 2px; border: 2px solid #dbdbdb;
				   display: flex; align-items: center; justify-content: center; }
.doc_mini-shared svg { width: 16px; height: 16px; }


/* document selector dialog */
.document_selector .modal-dialog { width: 90vw; height: 90vh; }
.document_selector .modal-content { height: 100%; }
.document_selector .modal-body { height: calc(100% - 126px); }
.document_selector .doc-split-area { background-color: transparent; }
.document_selector .doc-selected { position: absolute; left: 9px; bottom: 5px; display: none; }
.document_selector .doc-selected input { transform: scale(1.5); }
.document_selector .doc-multiselect .doc-selected { display: block; }
.document_selector .doc-multiselect .doc_incoming_outgoing_icon { width: 40px; }
.document_selector .doc-multiselect .doc_incoming_outgoing_icon:before { width: 40px; }
.document_selector .doc-multiselect .doc_incoming_outgoing_icon_inner { padding-left: 15px; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* editable document editor */
.edoc-split-area { display: flex; flex-direction: column; padding: 0 15px 15px 15px; width: 100%; height: 100%; container: edoc_area / size; }
.edoc-split-upper-area { display: block; width: 100%; height: auto; }
.doc-split-upper-area hr { margin-top: 10px; margin-bottom: 15px; }
.edoc-split-lower-area { flex-grow: 1; display: flex; flex-direction: row; height: 100%; width: 100%; }
.edoc-area { height: 100%; min-height: 100%; }

/* editor area */
.edoc-area-outer { overflow: hidden; display: flex; flex-direction: column; padding-left: 0; padding-right: 0; flex: 2 2 auto; }
.edoc-container { position: relative; flex-grow: 1; width: 100%; height: 100%; }
.edoc-editor { position: absolute; left: 0; top: 0; bottom: 0; right: 0; overflow-y: auto; padding: 0; background-color: #aaaaaa; }

/* sidebar */
.edoc_sidebar_container { overflow: hidden; /*height: 100%; min-height: 100%;*/ display: flex; flex-direction: column; padding-right: 0;
						  flex: 1 1 auto; min-width: 220px; max-width: 440px; }
.edoc_sidebar { position: relative; flex-grow: 1; width: 100%; height: 100%; }
.edoc_sidebar_inner { height: 100%; width: 100%; overflow-y: auto; padding: 0; }

.edoc_field_filter { margin-bottom: 10px; }
.edoc_sidebar_inner .panel { position: relative; }
.edoc_sidebar_inner .panel h4 { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; line-height: 1.3; }
.edoc_sidebar_inner .panel h4 i { position: absolute; right: 10px; top: 12px; float: none; }
.edoc_sidebar_inner .collapsing { transition-duration: .15s; }

/* template selector dialog */
.template-grid { height: 600px; max-height: 80vh!important; }
.template-grid .ui-grid-row:nth-child(odd):hover .ui-grid-cell { background-color: #dbdbdb; }
.template-grid .ui-grid-row:nth-child(even):hover .ui-grid-cell { background-color: white; }
.template-list-select-org .ui-select-choices { width: 400px; height: 400px; max-height: 400px; }
.modal-header-tabbar { padding-bottom: 0; padding-right: 0; display: flex; flex-direction: row; flex-wrap: nowrap; border-bottom-width: 0; }
.modal-header-tabbar h3 { flex: 1 1 0; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; }
.modal-header-tabbar:before { content: ""; display: none; }
.modal-header-tabbar:after { content: ""; display: none; }
.modal-header-tabbar .tabbar { margin-top: 0; }
.modal-header-tabbar .tabbar-inner { padding-top: 12px; }

.edoc-template-selector .modal-dialog { width: 80vw;}
.edoc-template-preview-cell { overflow: scroll; text-overflow: clip; white-space: nowrap; }
.edoc-template-item { display: inline-block; margin: 0 5px 0 5px; text-align: center; width: 230px; color: black; font-weight: normal; height: 250px; padding-bottom: 20px; }
.edoc-template-item:hover { text-decoration: none; color: black; -webkit-filter: brightness(80%); filter: brightness(80%); }
.edoc-template-item span { display: block; text-overflow: ellipsis; }
.edoc-template-item img { display: block; height: 85%; max-height: 85%; border: 1px solid #999999; margin: 0 auto 0 auto; }

/* document toolbar */
.mini-label-top { flex: 1 1 0; }
.mini-label { font-weight: normal; font-size: 10px; margin-bottom: 0; padding-left: 10px; line-height: 1.5; }
.mini-label-top .mini-label { display: block; }
.edoc-toolbar { display: flex; flex-direction: row; margin-bottom: 0; margin-top: 10px; }
.edoc-toolbar-left { display: flex; flex-direction: column; flex: 1 1 0; }
.edoc-toolbar-right { display: flex; flex-direction: column; width: calc(25% - 15px); margin-left: 15px; }
.edoc-toolbar-line { display: flex; flex-direction: row; column-gap: 10px; min-height: 58px; }
.edoc-case-file-category { flex-grow: 2; }
.edoc-order { width: 70px; flex: none; }
.edoc-date { width: 286px; flex: none; }
.edoc-category .ui-select-choices { min-width: 600px; height: 500px; }
.edoc-category .ui-select-bootstrap > .ui-select-choices { max-height: 500px; }
.edoc-deadline { width: 75px; flex: none; }
.edoc-visibility { width: 293px; flex: none; }
.edoc_editor_toolbar { flex-grow: 2; min-width: 460px; }

/* editor */
.edoc-page-area { position: relative; }
.edoc-page { position: relative; margin: 0 auto 20px auto; }
.edoc-page-inner { position: absolute; left: 0; right: 0; top: 0; bottom: 0; }
.edoc-content { outline: 1px dotted #dddddd; position: relative; z-index: 1; }
.edoc-content p, .edoc-content h1, .edoc-content h2 { margin: 0; padding: 0; }
.edoc-content.edoc-readonly { outline: none; z-index: 0; }
.edoc-content.edoc-focus { outline-color: #666666; }
.edoc-content-fixed { overflow: hidden; }
.edoc-template-editor .edoc-content { position: relative; }
.edoc-template-editor .edoc-content, .edoc-template-editor .edoc-content.edoc-readonly { outline: none; z-index: 1; }
.edoc-template-editor .edoc-content.edoc-content-fixed { outline: none; overflow: visible; }
.edoc-template-editor .edoc-content-border { position: absolute; cursor: crosshair; z-index: 2; overflow: hidden; }
.edoc-template-editor .edoc-content-top { border: 1px dotted #999; width: 100%; height: 2px; top: 0; left: 0; }
.edoc-template-editor .edoc-content-bottom { border: 1px dotted #999; width: 100%; height: 2px; bottom: 0; left: 0; }
.edoc-template-editor .edoc-content-left { border: 1px dotted #999; width: 2px; height: 100%; top: 0; left: 0; }
.edoc-template-editor .edoc-content-right { border: 1px dotted #999; width: 2px; height: 100%; top: 0; right: 0; }
.edoc-template-editor .edoc-content-fixed .edoc-content-border { border-style: dashed; }
.edoc-template-editor .edoc-content-handle { display: none; position: absolute; width: 7px; height: 7px; background-color: var(--main-color); z-index: 4; }
.edoc-template-editor .edoc-content-left-top { left: -3px; top: -3px; cursor: nwse-resize; }
.edoc-template-editor .edoc-content-right-top { right: -3px; top: -3px; cursor: nesw-resize; }
.edoc-template-editor .edoc-content-left-bottom { left: -3px; bottom: -3px; cursor: nesw-resize; }
.edoc-template-editor .edoc-content-right-bottom { right: -3px; bottom: -3px; cursor: nwse-resize; }
.edoc-template-editor .edoc-content-move-handle { width: 100%; height: 100%; z-index: 3; cursor: move; background-color: var(--main-color); opacity: 0.2; }
.edoc-template-editor .edoc-content.block-selected .edoc-content-handle { display: block; }

.edoc-template-editor .edoc-page-border { position: absolute; cursor: crosshair; z-index: 2; overflow: hidden;}
.edoc-template-editor .edoc-page-top { border: 2px dotted #999; width: 100%; height: 4px; top: 0; left: 0; }
.edoc-template-editor .edoc-page-bottom { border: 2px dotted #999; width: 100%; height: 4px; bottom: 0; left: 0; }
.edoc-template-editor .edoc-page-left { border: 2px dotted #999; width: 4px; height: 100%; top: 0; left: 0; }
.edoc-template-editor .edoc-page-right { border: 2px dotted #999; width: 4px; height: 100%; top: 0; right: 0; }
.edoc-template-editor .edoc-page-move-handle { display: none; position: absolute; width: 100%; height: 100%; z-index: 3; background-color: var(--main-color); opacity: 0.2; }
.edoc-template-editor .edoc-page-area.block-selected .edoc-page-handle { display: block; }

.edoc-template-editor .edoc-resize-move { user-select: none; -moz-user-select: none; -webkit-user-select: none; -ms-user-select: none; cursor: move!important; }
.edoc-template-editor div.edoc-resize-left-top { cursor: nwse-resize!important; }
.edoc-template-editor div.edoc-resize-right-top { cursor: nesw-resize!important; }
.edoc-template-editor div.edoc-resize-left-bottom { cursor: nesw-resize!important; }
.edoc-template-editor div.edoc-resize-right-bottom { cursor: nwse-resize!important; }

.edoc-editor .mce-edit-focus { outline: none; }
.edoc-field { background-color: #e9f9e4; }
table.edoc-field { width: 100%; border: none; font-size: 15px; }
table.edoc-field td { padding: 0.1em 0.85em 0.1em 0.85em; border: none; }

table.edoc-field .edoc-table-col1 { text-align: left; }
table.edoc-field .edoc-table-col1_5 { text-align: right; }
table.edoc-field .edoc-table-col2 { text-align: right; }
table.edoc-field.edoc-invoice .edoc-table-col1_5 { width: 15%; max-width: 16em; text-align: right; }
table.edoc-field.edoc-invoice .edoc-table-col2 { width: 15%; max-width: 14em; text-align: right; }
table.edoc-field tfoot { border-top: 1px solid black; }
table.edoc-field tfoot td { font-weight: 600; }
table.edoc-field tfoot .edoc-table-summary td { font-weight: bold; }
table.edoc-field .edoc-table-summary { border-top: 1px solid black; }
table.edoc-field .invoice-sum-net { border-top: 1px solid black; }
table.edoc-field .invoice-vat { border-bottom: 1px solid black; }
table.edoc-field .invoice-sum-vat-free { border-top: 1px solid black; border-bottom: 1px solid black; }
table.edoc-field .edoc-invoice-line-start td { padding-top: 0.8em; }
table.edoc-field .edoc-invoice-line-start:first-child td { padding-top: 0; }
table.edoc-field .edoc-table-header td { padding-top: 0.7em; text-decoration: underline; }
table.edoc-field .edoc-table-header.edoc-group-name td span:first-child { font-weight: bold; }

.edoc-content.edoc-readonly .edoc-field { background-color: transparent; }
.edoc-template-editor .edoc-field, .edoc-template-editor .edoc-content.edoc-readonly .edoc-field { background-color: #d9e9d4; }
.edoc-content var { font-style: normal; }
.edoc-content * { font-family: inherit; font-size: inherit; font-weight: inherit; line-height: inherit; }
.edoc-content strong { font-weight: 700; }
.edoc-content em { font-style: italic; }

.edoc-field-list .text-muted { color: #333333; }
.edoc-field-list a { user-select: none; -moz-user-select: none; -moz-user-drag: none; -webkit-user-drag: none; -khtml-user-drag: none; }
.edoc-field-list a:hover .text-muted, .edoc-subfield:hover { color: var(--main-color); }

.edoc-template-properties label { display: table-cell; vertical-align: middle; text-align: right; font-weight: normal; width: 120px; }
.edoc-template-properties input { margin-top: 2px; margin-bottom: 2px; }
.edoc-template-prop-buttons { text-align: center; margin-bottom: 5px; }

.edoc-drag-over { background-color: #f5f5f5; } /* background-color: #f0fbed; */
span.edoc-wrap { padding: 0; margin: 0; line-height: inherit; width: auto; height: auto; display: inline; }

/* special editor styles */
.edoc-content.border-bottom { border-bottom: 1px solid black; }
.edoc-content.border-left { border-left: 1px solid black; }
.edoc-content.border-right { border-right: 1px solid black; }
.edoc-content.border-top { border-top: 1px solid black; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* email editor */
.email-area { height: 100%; overflow: auto; }
.email-area-outer { height: 100%; min-height: 770px; display: flex; flex-direction: column; flex: 2 2 auto; padding: 0 15px 20px 15px; }
.email-area-outer .flex-col0 { width: 80px; }
.email-area var { font-style: normal; }
.email-toolbar2 { margin-bottom: 4px; display: table; height: 46px; padding-left: 0; padding-right: 0; }
.email-editor-toolbar { height: 38px; width: 530px; display: table-cell; vertical-align: top; }
.email-editor-toolbar-right { padding-top: 2px; display: table-cell; vertical-align: top; }
.email-toolbar-buttons { padding-top: 3px; }

form.email-form { flex: 1 1 0; display: flex; flex-direction: column; }
.email-top { flex: none; }
.email-bottom { flex: 1 1 0; display: flex; flex-direction: column; }
.email-bottom > div { flex: 1 1 auto; position: relative; }
.email_body-container { display: flex; flex-direction: column; flex: 1 1 100%; height: 100%; }
.email_body { overflow: scroll; flex: 1 1 0; min-height: 200px; }
.email_body > div, .email_body > div:focus, .email_body > div:active { outline: none; }
div.template-editor-email-attachments { height: 75px; flex-shrink: 1; flex-grow: 0; }
.email_attachments-container { height: 100%; overflow-x: scroll; overflow-y: hidden; white-space: nowrap; min-height: 150px; }
.email_attachments { height: 100%; white-space: nowrap; }
.email_attachment { height: 100%; position: relative; display: inline-block; width: 227px; margin-right: 15px; }
.email_attachment img { position: absolute; top: 26px; bottom: 0; height: 100%; display: block; }
.email_attachment button { width: 24px; height: 24px; }
.email_attachment-header { max-width: 100%; overflow: hidden; }
.email_attachment-header span { text-overflow: ellipsis; font-size: 10px; white-space: nowrap; }
.email_attachment a { cursor: pointer; }

.email-address { overflow: hidden; height: auto; min-height: 34px; }

/* template selector dialog */
.attachment-grid { height: 600px; max-height: 80vh!important; }
.attachment-preview-cell { text-align: center; }
.attachment-preview { max-height: 100%; border: 1px solid #999999 ;}

/* print editor */
.print-container-middle { padding: 10px 20px 20px 20px; }
form.print-form { height: calc(100% - 40px - 15px); position: relative; display: flex; flex-direction: row; flex-wrap: nowrap; overflow: hidden; justify-content: start;
				  align-content: start; }
form.print-form label { flex: none; padding: 23px 20px 0 10px; display: block; height: 100%; overflow: hidden; }

.print_attachments-container-outer { width: 100%; height: 100%; position: absolute; left: 86px; top: 0; right: 0; bottom: 0; }
.print_attachments-container { display: flex; flex-direction: row; flex-wrap: nowrap; overflow-x: scroll; overflow-y: hidden; white-space: nowrap;
							   flex: 1 1 auto; column-gap: 15px; height: 100%; }
.print_attachment { flex: none; display: inline-block; }
.print_attachment img { display: block; height: 100%; max-height: calc(100% - 20px); }
.print_attachment-header { max-width: 100%; overflow: hidden; }
.print_attachment-header span { text-overflow: ellipsis; font-size: 10px; white-space: nowrap; }
#attachment_add { cursor: pointer;  }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* invoices */
.invoice-split-area { display: flex; flex-direction: column; height: 100%; padding: 12px 15px 10px 15px; width: 100%; max-width: 100%; background-color: #dbdbdb;
					  position: relative; max-height: calc(100% - 34px); height: calc(100% - 34px); overflow-y: none; }
.invoice-list-container { container: invoice_list_container / size; }
.invoice-form { display: flex; flex-direction: column; flex: 1 1 0; }
.invoice-split-upper-area { display: flex; flex-direction: row; flex-wrap: nowrap; margin-bottom: 7px; flex: none; }
.invoice-edit-split-upper-area { display: block; width: 100%; height: auto; flex: none; }
.invoice-toolbar { margin-bottom: 0; margin-top: 0; }
.invoice-toolbar .doc-pdf-toolbar { margin-bottom: 0; }
.invoice-toolbar .invoice-name { flex: 1 1 0; }
.invoice-toolbar .invoice-type { flex: none; width: 120px; }
.invoice-toolbar .invoice-vat { flex: none; width: 100px; }
.invoice-toolbar .invoice-date { width: 135px; flex: none; }
.invoice-toolbar .invoice-name-vat { align-items: start; }

.invoice-split-lower-area { flex: 1 1 0; overflow-x: auto; display: flex; flex-direction: column; }
.invoice_properties_edit { height: 49px; display: flex; margin-top: 10px; }
.invoice_properties_edit:first-child { margin-top: 0; }
.invoice_properties_edit > .invoice-name { flex: 3 1 0; }
.invoice_properties_edit > .invoice-vat { width: 110px; flex: none; }
.invoice_properties_edit > .invoice-date { width: 180px; flex: none; }
.invoice_properties_edit > .invoice-type { flex: 1 1 0; }
.invoice-toolbar-buttons { align-self: end; }
.invoice-search { flex: 1 1 auto; width: 100%; }
.invoice-search input[type="text"] { height: 26px; width: 100%; display: block; }
.invoice-search-type { flex: none; }
.invoice-grid-title { height: 34px; flex: none; }
.invoice-grid-title h4 { margin-top: 0; }

.invoice-toolbar-buttons { border-left: 1px solid #c0c0c0; padding-left: 15px; margin-left: 10px; }
.invoice_table_correction .ui-grid-cell-contents { text-decoration: line-through 1px black;  }
.first_invoice { font-style: italic; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* document uploader */
.document-upload .preview { display: block; margin: 0 0 0 20px; }
.document-upload button.btn, .document-upload button span { color: white; background-color: var(--main-color); border-radius: 0; border: none; }
.document-upload button.btn:hover, .document-upload button.btn:hover span { background-color: var(--highlight-color); }
.document-upload .current_file { text-align: center; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* image uploader */
.image-upload img { height: 200px; max-width: 400px; margin-top: 20px; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* csv import */
.import-table-container { width: 100%; overflow: scroll; }
.import-table { width: auto; min-width: 100%; font-size: 14px; }
.import-table th { background-color: var(--main-color); color: white; font-weight: 600; border-right: 1px solid #ececec; white-space: nowrap; padding: 7px 10px 3px 10px; cursor: pointer; height: 35px; }
.import-table td { border: 1px solid #d4d4d4;; white-space: nowrap; padding: 7px 10px 3px 10px; cursor: pointer; height: 35px; }
.import-table > tbody > tr:nth-child(even) td { background-color: #ffffff; }
.import-table > tbody > tr:nth-child(odd) td { background-color: #fafafa; }
.import-table > thead > tr > th.col-active { font-weight: bold; }
.import-table > tbody > tr > td.col-active { font-weight: bold; background-color: #f0f0f0; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* timeline */
.timeline-area { flex: none; width: 300px; background-color: #dbdbdb; margin-left: 15px; transition: width 0.1s ease-in-out; height: 100%; }
.timeline-area .content-header { cursor: pointer; transition: all 0.1s ease-in-out; }
.timeline-area .content-inner { display: block; height: calc(100% - 23px - 32px); overflow: hidden; }
.timeline-area > div { height: 100%; }
.timeline-area.closed { width: 32px; transition: width 0.1s ease-in-out; }
.timeline-area.closed .content-header { transform-origin: left bottom; width: 300px; transform: translateY(-32px) rotate(90deg);
										transition: all 0.1s ease-in-out; }
.timeline-area.closed .content-inner { display: none; }
.timeline-outer-container > .content-header > .content-header-inner > div { flex: 1 1 0; display: block; white-space: nowrap; }
.timeline-outer-container > .content-header > .content-header-inner > span.fa { flex: none; display: block; font-size: 24px; }
.timeline-outer-container > .content-header > .content-header-inner > span.fa-angle-down { display: block; }
.timeline-outer-container > .content-header > .content-header-inner > span.fa-angle-left { display: none; }
.timeline-area.closed .timeline-outer-container > .content-header > .content-header-inner > span.fa-angle-down { display: none; }
.timeline-area.closed .timeline-outer-container > .content-header > .content-header-inner > span.fa-angle-left { display: block; }

.timeline-outer-container { height: 100%; display: flex; flex-direction: column; flex: 1 1 100%; }
.timeline-container { overflow-y: auto; height: 100%; }
.timeline { padding: 10px 15px 10px 15px; }
.timeline-entry { width: 100%; position: relative; }
.timeline-inner { display: flex; flex-direction: row; align-items: stretch; position: relative; color: black; }
.timeline-inner:hover { color: black; text-decoration: none; cursor: pointer; }

.timeline-text { flex: 1 1 0; display: flex; flex-direction: column; justify-content: center; overflow: hidden; }
.timeline-dot { flex: none; margin-left: 9px; width: 36px; height: 36px; background-color: #53af31; text-align: center; line-height: 38px; }
.timeline-dot .icon { color: white; font-size: 20px; }
.timeline-entry.milestone .timeline-dot { margin-left: 0; width: 54px; height: 54px; background-color: var(--main-color); line-height: 56px; }
.timeline-outgoing .timeline-dot:before { content: ""; position: absolute; left: -1px; top: calc(50% - 7px); height: 14px; width: 7px; border-top: 7px solid transparent; border-bottom: 7px solid transparent; border-right: 7px solid #53af31; }
.timeline-incoming .timeline-dot:before { content: ""; position: absolute; left: -1px; top: calc(50% - 7px); height: 14px; width: 7px; border-top: 7px solid transparent; border-bottom: 7px solid transparent; border-left: 7px solid #53af31; }
.timeline-entry.milestone .timeline-dot:before { display: none; }

.timeline-entry.progress_note .timeline-dot { background-color: #69c8ff; }
.timeline-entry.progress_note .timeline-outgoing .timeline-dot:before { border-right-color: #69c8ff; }
.timeline-entry.progress_note .timeline-incoming .timeline-dot:before { border-left-color: #69c8ff; }
.timeline-entry.phone_note .timeline-dot { background-color: #ffaf00; }
.timeline-entry.phone_note .timeline-outgoing .timeline-dot:before { border-right-color: #ffaf00; }
.timeline-entry.phone_note .timeline-incoming .timeline-dot:before { border-left-color: #ffaf00; }
.timeline-entry.phone_note.missed:after { content: "×"; position: absolute; left: 35px; bottom: -6px; color: #ff2300; font-weight: 700; font-size: 24px; }

.timeline-title { display: block; font-size: 13px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; padding-left: 20px; }
.timeline-date { display: block; font-size: 12px; padding-left: 20px; }
.timeline-entry.milestone .timeline-text { background-color: white; position: relative; }
.timeline-entry.milestone .timeline-text:after { content: ""; position: absolute; right: 0; bottom: 0; width: 15px; height: 15px; border-left: 15px solid transparent; border-bottom: 15px solid #dbdbdb; }
.timeline-entry.milestone .timeline-title { font-size: 14px; font-weight: bold; padding-left: 11px; }
.timeline-entry.milestone .timeline-date { padding-left: 11px; }

.timeline-line { width: 2px; height: 7px; background-color: #f1f1f1; margin-left: 26px; }
.timeline-entry.milestone .timeline-line { height: 15px; }
.timeline-entry:first-child .timeline-line-top { display: none; }
.timeline-entry:last-child .timeline-line-bottom { display: none; }

.timeline-entry.in-future, .timeline-entry.in-future .timeline-inner { color: #888888; }
.timeline-entry.in-future .timeline-dot { background-color: white; }
.timeline-entry.in-future .timeline-dot .icon { color: #dbdbdb; }
.timeline-entry.in-future .timeline-entry.milestone .timeline-dot { background-color: white; }
.timeline-entry.in-future.milestone .timeline-text { background-color: transparent; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* right side area */
.right-side { display: flex; flex-direction: column; cursor: pointer; transition: width 0.1s ease-in-out; }
.right-side.overlay { position: absolute; right: 0; top: 0; bottom: 0; border: 15px solid #ECECEC; z-index: 101; }
.right-side-backdrop { display: none; position: fixed; left: 0; top: 0; width: 100vh; height: 100vh; background-color: rgba(0,0,0, 0.08);
					   z-index: 100; }
.right-side > div { height: 100%; display: flex; flex-direction: column; flex: 1 1 100%; }
.right-side .right-side-outer-container { height: 100%; display: flex; flex-direction: column; flex: 1 1 100%; }
.right-side .content-header { cursor: pointer; transition: all 0.1s ease-in-out; }
.right-side.closed { width: 32px; transition: width 0.1s ease-in-out; }
.right-side.closed .content-header { transform-origin: left bottom; width: 300px; transform: translateY(-32px) rotate(90deg);
  									transition: all 0.1s ease-in-out; }
.right-side.closed .right-side-notes { display: none; }
.right-side.closed .right-side-reminder { display: none; }

/* notes / progress notes */
.right-side-notes { flex: none; height: auto; }
.right-side-outer-container > .content-header > .content-header-inner > div { flex: 1 1 0; display: block; white-space: nowrap; }
.right-side-outer-container > .content-header > .content-header-inner > span.fa { flex: none; display: block; font-size: 24px; }
.right-side-outer-container > .content-header > .content-header-inner > span.fa-angle-down { display: block; }
.right-side-outer-container > .content-header > .content-header-inner > span.fa-angle-left { display: none; }
.right-side.closed .right-side-outer-container > .content-header > .content-header-inner > span.fa-angle-down { display: none; }
.right-side.closed .right-side-outer-container > .content-header > .content-header-inner > span.fa-angle-left { display: block; }

.right-side-notes-element { flex: none; height: 34px; transition: all 0.2s ease-in-out; }
.right-side-notes-element aside { display: block; }
.right-side-notes-element.notes-open { height: 200px; transition: all 0.2s ease-in-out; margin-bottom: 4px; left: 0; width: 100%; position: relative; }
.right-side-notes-element .content-header { margin-bottom: 0; border-bottom: 2px solid #ececec; height: 34px; z-index: 2; position: relative; }
.right-side-notes-element .content-header-inner { cursor: pointer; display: flex; flex-direction: row; align-items: center; width: 100%; }
.right-side-notes-element .content-header-inner > div { flex: 1 1 0; display: block; white-space: nowrap; }
.right-side-notes-element .content-inner-notes { height: calc(100% - 34px); }
.right-side-notes-element .content-inner-notes textarea { height: 100%; border: none; background-color: #fce869; resize: none; display: none; }
.right-side-notes-element .progress-note { background-color: #a6e3fb; padding: 6px 12px 6px 12px; overflow-y: auto;
									  background-image: url("../img/icon_progress_note_maximize.svg"); background-repeat: no-repeat;
									  background-position: right 10px bottom 10px; background-size: 25px 20px; cursor: pointer; }
.right-side-notes-element .org-info { background-color: #b3cef3; padding: 6px 12px 6px 12px; overflow-y: auto;
									  background-image: url("../img/icon_org_info_maximize.svg"); background-repeat: no-repeat;
									  background-position: right 10px bottom 10px; background-size: 25px 20px; cursor: pointer; }
.right-side-notes-element.notes-open .content-inner-notes textarea { display: block; }
.content-header.notes-header { background-color: #c9a51d; }
.content-header.progress-note-header { background-color: #00b0f3; }
.content-header.org-info-header { background-color: #2982df; }
.right-side-notes-element .progress-note div { padding-bottom: 8px; }
.right-side-notes-element .progress-note span { display: block; }
.right-side-notes-element .progress-note span:first-child { font-size: 12px; }
.right-side-notes-element .org-info h1 { margin: 0 0 10px 0; padding: 0 0 0 0; font-size: 17px; font-weight: 600; }
.right-side-notes-element .org-info h2 { margin: 0 0 0 0; padding: 4px 0 7px 30px; font-size: 14px; font-weight: 600;
										 background-image: url(../img/icon_org_info.svg); background-repeat: no-repeat; background-position: 0 0;
										 background-size: 24px 24px; }
.right-side-notes-element .org-info p { margin: 0 0 10px 0; padding: 0 0 0 30px; font-size: 14px; font-weight: normal; }
.right-side-notes-element .org-info section { margin-bottom: 13px; }
.right-side-notes-element .org-info .org-info-organization { border-bottom: 1px solid #4b8de1; margin-bottom: 18px; }
.right-side-notes-element.notes-open.expanded { position: relative; left: calc(min(285px, calc(100vw - 400px + 15px)) * (-1)); width: min(685px, calc(100vw - 15px)); height: 550px; z-index: 10;
												box-shadow: 1px 1px 7px 2px rgba(0,0,0,0.5); transition: all 0.2s ease-in-out; }
.right-side-notes-element.notes-open.expanded .progress-note { background-image: url("../img/icon_progress_note_minimize.svg");
															   padding: 16px 22px 16px 22px; }
.right-side-notes-element.notes-open.expanded .org-info { background-image: url("../img/icon_org_info_minimize.svg"); padding: 16px 22px 16px 22px; }
.right-side-notes-backdrop { position: fixed; top: 0; bottom: 0; width: 100vw; height: 100vh;
							 background-color: rgba(0,0,0,0.05); z-index: 9; }

.right-side-header-buttons { text-align: right; position: relative; top: -2px; font-size: 24px; display: block; }
.right-side-header-buttons span { display: inline-block; cursor: pointer; }

/* reminder */
.right-side-reminder { flex: 1 1 0; background-color: #dbdbdb; }
.right-side-reminder aside, .right-side-notes aside { height: 100%; display: flex; flex-direction: column; }

/* header */
.reminder-content-header { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; padding-right: 18px; position: relative;
						   background-color: #53af31; height: 32px; margin-bottom: 2px; color: white; }
.reminder-content-header-title { font-weight: bold; padding-left: 22px; padding-right: 22px; }
.reminder-content-header-input { flex: 1 1 0; height: 24px; font-size: 11px; padding: 2px 4px 2px 4px; color: black; border-radius: 4px;
								 border: 1px solid white; }
.reminder-content-header-input.reminder-filter-active { background-color: #e01138; color: white; }
.reminder-content-header-button { margin-left: 5px; width: 24px; height: 24px; -webkit-appearance: none; -moz-appearance: none; appearance: none;
								  font-size: 14px; line-height: 26px; background-color: transparent; border: 1px solid white;
								  border-radius: 4px; padding: 0 6px 0 6px; color: white; }
.reminder-content-header-button span { display: block; }
.reminder-content-header-button:hover { background-color: var(--highlight-color); }
.reminder-content-header-button:active span { font-size: 13px; }
.reminder-content-header-button.reminder-filter-active { background-color: #e01138; }
.loading-reminder { position: absolute; top: 9px; left: -17px; font-size: 14px; padding: 0; margin: 0;}

/* reminder list */
.reminder-list-container { flex: 1 1 0; display: flex; flex-direction: column; padding: 0 0 15px 15px;
						   background-color: #dbdbdb; background-color: #dbdbdb; }
.reminder-list { overflow-y: auto; display: flex; flex-direction: column; flex: 1 1 0; padding-right: 15px; }

/* bottom edit field for new reminders */
.reminder-new-edit { margin-top: 15px; padding-right: 15px; }
.reminder-new-edit-field { height: auto; min-height: 34px; z-index: 10; position: relative; }
.reminder-new-edit textarea { max-height: calc(100vh - 350px); }

/* auto resize textarea */
.auto-textarea { width: 100%; border: none; padding: 0; margin: 0; }
.auto-textarea:focus, .auto-textarea:active { outline: none; }


/* ------------- */
/* reminder item */
/* ------------- */
.reminder { margin-top: 20px; position: relative; }
.reminder-container-own { padding-left: 20px; }
.reminder-container-other { padding-right: 20px; }

/* outside header (create date, read flag, mini buttons) */
.reminder-outside-header { display: flex; flex-direction: row; min-height: 24px; }
.reminder-outside-triangle { width: 30px; height: 30px; border-left: 30px solid #f1f1f1; border-top: 30px solid transparent; }
.reminder-create-date-container { flex: 1 1 0; display: flex; flex-direction: row; align-items: center; position: relative; left: -23px; }

@keyframes read_button_pulse
{
	0% { opacity: 1; }
	50% { opacity: 0.7; }
	100% { opacity: 1; }
}
.reminder-read { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: none; background: transparent; padding: 0 5px 0 0;
				 z-index: 1; }
.reminder-read i { display: block; border: 4px solid #dbdbdb; width: 20px; height: 20px; border-radius: 10px; background-color: #f1f1f1; }
.reminder-read span { display: block; width: 12px; height: 12px; border-radius: 6px; background-color: #f1f1f1;
					  animation-name: read_button_pulse; animation-duration: 1.7s; animation-timing-function: ease-in-out;
					  animation-iteration-count: infinite; }
.reminder-read:hover span { border-width: 6px; }
.reminder-read-read { visibility: hidden; }
.reminder-create-date { flex: 1 1 0; font-size: 12px; text-align: left; }

.reminder-container-own .reminder-outside-triangle { visibility: hidden; }
.reminder-container-own .reminder-read { display: none; }

/* mini buttons */
.reminder-mini-buttons { display: flex; flex-direction: row; height: 30px; position: relative; }
.reminder-mini-buttons-triangle { border-left: 30px solid transparent; border-bottom: 30px solid #f1f1f1; height: 30px; width: 30px; }
.reminder-mini-buttons-inner { background-color: #f1f1f1; height: 30px; }
.reminder-mini-buttons button { -webkit-appearance: none; -moz-appearance: none; appearance: none; font-size: 16px; line-height: 30px;
							    background-color: transparent; height: 30px; border: none; margin: 0; padding: 0 6px 0 6px;
							    color: white; }
.reminder-mini-buttons button:hover { opacity: 0.6; }

/* item body */
.reminder-body { border-left: 2px solid transparent; border-top: 2px solid transparent; position: relative; }
.reminder-line-bottom { position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background-color: transparent; z-index: 1; }
.reminder-line-right { position: absolute; top: 0; bottom: 0; right: 0; width: 2px; background-color: transparent; z-index: 1; }
.reminder-triangle { position: absolute; right: 0; bottom: 0; width: 16px; height: 13px; border-left: 16px solid transparent; border-bottom: 13px solid #dbdbdb; z-index: 2; }
.reminder-triangle-line { position: absolute; right: 0; bottom: 0; width: 16px; height: 13px; border-left: 16px solid transparent; border-bottom: 13px solid transparent; z-index: 3; }
.reminder-triangle-line2 { position: absolute; right: 1.5px; bottom: 1.5px; width: 16px; height: 13px; border-left: 16px solid transparent; border-bottom: 13px solid transparent; z-index: 4; }
.reminder-own { background-color: white; cursor: pointer; }
.reminder-own .reminder-triangle-line2 { border-left-color: white; }

/* header, icon, title */
.reminder-header { color: black; font-size: 14px; font-weight: 600; height: 28px; padding: 0 0 0 0; position: relative; }
.reminder-icon { font-size: 18px; padding: 4px 0 0 10px; font-weight: normal; display: inline-block; }
.reminder-icon-img { position: relative; }
.reminder-icon-img img { width: 24px; height: 24px; }
.reminder-title { margin-left: 4px; }
.reminder-phone-direction { position: absolute; font-size: 13px; color: #e6007e; }
.reminder-phone-direction-incoming { transform: rotate(-45deg); left: -3px; top: -3px; }
.reminder-phone-direction-outgoing { transform: rotate(135deg); left: -3px; top: -3px; }

/* user image */
.reminder-user-image { position: absolute; right: 10px; top: 8px; }
.reminder-user-image img { width: 26px; height: 26px; display: inline; border: 1px solid black; color: green; cursor: pointer; }
.reminder-due .reminder-user-image img, .reminder-overdue .reminder-user-image img { border-color: white; }

/* reply button */
.reminder-reply-button { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: none;
						 background-color: transparent; position: absolute; right: 8px; top: 45px; color: white; font-size: 24px;
						 opacity: 0.7; }
.reminder-reply-button:hover { opacity: 1; }
.reminder-reply-button:active { opacity: 1; font-size: 22px; right: 9px; top: 41px; }

/* from / to / group */
.reminder-from-to { font-size: 11px; font-weight: 600; padding: 10px 10px 10px 15px; }
.reminder-from-to em { font-style: normal; font-weight: normal; }
.reminder-assigned-user, .reminder-assigned-group { padding-right: 15px; }

/* important */
.reminder-important-left, .reminder-important-right { position: absolute; top: 40px; font-size: 15px; font-weight: 900;
													  color: white; background-color: #e62442; width: 18px; height: 18px;
													  line-height: 1; border-radius: 10px; text-align: center; }
.reminder-important-left { left: 0px; }
.reminder-important-right { right: 0px; }
.reminder-important-left span, .reminder-important-right span { display: inline-block; position: relative; top: 1.5px; left: 0.5px; }

/* text content */
.reminder-text { padding: 0 10px 8px 15px; white-space: pre-wrap; }

/* accounting */
.reminder-accounting { padding: 0 10px 8px 15px; }

/* document */
.reminder-doc-link { padding: 0 10px 8px 15px; cursor: pointer; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; }
.reminder-doc-link a { color: black; }

/* address */
.reminder-address-link { padding: 0 10px 8px 15px; cursor: pointer; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; }
.reminder-address-link a { color: black; }

/* account entry */
.reminder-account-link { padding: 0 10px 8px 15px; cursor: pointer; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; }
.reminder-account-link a { color: black; }

/* done flag */
.reminder-done { opacity: 0.7; background-image: repeating-linear-gradient(-60deg, transparent, transparent 10px,
																		   rgba(227,227,227,0.6) 10px, rgba(227,227,227,0.6) 20px); }
.reminder-done-checkbox { padding: 0 10px 6px 15px; border-top: 1px solid #ccc; }
.reminder-done-user { font-size: 10px; }
.reminder-container-done .reminder-outside-header { opacity: 0.7; }

/* progress note visibility info */
.reminder-progress_note-info { padding: 5px 10px 6px 15px; border-top: 1px solid #ccc; display: flex; flex-direction: row; align-items: center; }
.reminder-progress_note-icon { width: 24px; height: 24px; margin-right: 5px; }
.reminder-progress_note-text { flex: 1 1 0; }
.reminder-progress_note-info-marked { font-weight: 600; }

/* answer expected / answer */
.reminder-answer-expected { padding: 5px 10px 10px 15px; border-top: 1px solid #ccc;
							display: flex; flex-direction: row; flex-wrap: nowrap; }
.reminder-answer-info { font-size: 11px; font-weight: 600; display: flex; flex-direction: row; flex-wrap: nowrap; width: calc(100% - 10px); }
.reminder-answer-info em { display: block; font-style: normal; font-weight: normal; }
.reminder-answer-info a { display: block; color: black; cursor: pointer; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
						  flex: 1 1 0; }

.reminder-answer-to { padding: 5px 7px 5px 7px; cursor: pointer; }
.reminder-answer-to-inner { background-color: #c7d3c3; padding: 5px 8px 5px 8px; border-left: 2px solid #4aaa2c; position: relative; }
.reminder-answer-date-from { display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: space-between; color: #555555;
							 margin-bottom: 5px; }
.reminder-answer-create-date { font-size: 11px; }
.reminder-answer-from { font-size: 11px; font-weight: 600; }
.reminder-answer-from em { font-style: normal; font-weight: normal;}
.reminder-answer-text { font-size: 12px; color: #555555; max-height: 34px; overflow: hidden; text-overflow: ellipsis;
						display: -webkit-box !important; -webkit-line-clamp: 2; -webkit-box-orient: vertical; white-space: normal; }
.reminder-answer-triangle { position: absolute; right: 0; bottom: 0; width: 16px; height: 13px; border-left: 16px solid transparent;
							border-bottom: 13px solid #c0e1b5; z-index: 2; }

/* phone note */
.reminder-call-result { padding: 0 10px 2px 15px; font-weight: 600; }

/* highlight animation */
@keyframes highlight
{
	0% { filter: brightness(1); }
	50% { filter: brightness(0.7); }
	100% { filter: brightness(1); }
}
.reminder.highlight { animation-name: highlight; animation-duration: 0.5s; animation-timing-function: ease-in-out; animation-iteration-count: 2; }


/*
Color table:         background  border   |  due background    |  overdue background  |  answer background
------------------------------------------+--------------------+----------------------+---------------------
comment              #e6e6e6     #ffffff  |                    |                      |
todo                 #ffd9b1     #ff6e20  |  #ff9d67           |  #ff6e20             |
reminder             #fee3a6     #fdb000  |  #fdcc54           |  #fdb000             |
message              #c0e1b5     #4aaa2c  |                    |                      |  #c7d3c3
deadline             #f8baad     #ea3814  |  #f1785f           |  #ea3814             |
phone_note           #fbd5e9     #e6007e  |                    |                      |
court_session        #e3b5ec     #b02ac9  |  #ca6bdb           |  #b02ac9             |
progress_note        #a6e3fb     #00b0f3  |                    |                      |
external_message     #b7b7dc     #04027a  |                    |                      |  #b3b3c5
document             #c5dbe4     #5a99b3  |                    |                      |
accounting           #b8dbd2     #33987f  |                    |                      |
api_message    		 #a6d6ff     #008aff  |                    |                      |  #d6ecff
*/

.reminder-comment { background-color: #e6e6e6; border-color: #ffffff; }
.reminder-todo { background-color: #ffd9b1; border-color: #ff6e20; }
.reminder-reminder { background-color: #fee3a6; border-color: #fdb000; }
.reminder-message { background-color: #c0e1b5; border-color: #4aaa2c; }
.reminder-deadline { background-color: #f8baad; border-color: #ea3814; }
.reminder-phone_note { background-color: #fbd5e9; border-color: #e6007e; }
.reminder-court_session { background-color: #e3b5ec; border-color: #b02ac9; }
.reminder-progress_note { background-color: #a6e3fb; border-color: #00b0f3; }
.reminder-external_message { background-color: #b7b7dc; border-color: #04027a; }
.reminder-document { background-color: #c5dbe4; border-color: #5a99b3; }
.reminder-accounting { background-color: #b8dbd2; border-color: #33987f; }
.reminder-api_message { background-color: #a6d6ff; border-color: #008aff; }

.reminder-comment .reminder-line-bottom, .reminder-comment .reminder-line-right { background-color: #ffffff; }
.reminder-todo .reminder-line-bottom, .reminder-todo .reminder-line-right { background-color: #ff6e20; }
.reminder-reminder .reminder-line-bottom, .reminder-reminder .reminder-line-right { background-color: #fdb000; }
.reminder-message .reminder-line-bottom, .reminder-message .reminder-line-right { background-color: #4aaa2c; }
.reminder-deadline .reminder-line-bottom, .reminder-deadline .reminder-line-right { background-color: #ea3814; }
.reminder-phone_note .reminder-line-bottom, .reminder-phone_note .reminder-line-right { background-color: #e6007e; }
.reminder-court_session .reminder-line-bottom, .reminder-court_session .reminder-line-right { background-color: #b02ac9; }
.reminder-progress_note .reminder-line-bottom, .reminder-progress_note .reminder-line-right { background-color: #00b0f3; }
.reminder-external_message .reminder-line-bottom, .reminder-external_message .reminder-line-right { background-color: #04027a; }
.reminder-document .reminder-line-bottom, .reminder-document .reminder-line-right { background-color: #5a99b3; }
.reminder-accounting .reminder-line-bottom, .reminder-accounting .reminder-line-right { background-color: #33987f; }
.reminder-api_message .reminder-line-bottom, .reminder-api_message .reminder-line-right { background-color: #008aff; }

.reminder-comment .reminder-triangle-line { border-left-color: #ffffff; }
.reminder-todo .reminder-triangle-line { border-left-color: #ff6e20; }
.reminder-reminder .reminder-triangle-line { border-left-color: #fdb000; }
.reminder-message .reminder-triangle-line { border-left-color: #4aaa2c; }
.reminder-deadline .reminder-triangle-line { border-left-color: #ea3814; }
.reminder-phone_note .reminder-triangle-line { border-left-color: #e6007e; }
.reminder-court_session .reminder-triangle-line { border-left-color: #b02ac9; }
.reminder-progress_note .reminder-triangle-line { border-left-color: #00b0f3; }
.reminder-external_message .reminder-triangle-line { border-left-color: #04027a; }
.reminder-document .reminder-triangle-line { border-left-color: #5a99b3; }
.reminder-accounting .reminder-triangle-line { border-left-color: #33987f; }
.reminder-api_message .reminder-triangle-line { border-left-color: #008aff; }

.reminder-comment .reminder-triangle-line2 { border-left-color: #e6e6e6; }
.reminder-todo .reminder-triangle-line2 { border-left-color: #ffd9b1; }
.reminder-reminder .reminder-triangle-line2 { border-left-color: #fee3a6; }
.reminder-message .reminder-triangle-line2 { border-left-color: #c0e1b5; }
.reminder-deadline .reminder-triangle-line2 { border-left-color: #f8baad; }
.reminder-phone_note .reminder-triangle-line2 { border-left-color: #fbd5e9; }
.reminder-court_session .reminder-triangle-line2 { border-left-color: #e3b5ec; }
.reminder-progress_note .reminder-triangle-line2 { border-left-color: #a6e3fb; }
.reminder-external_message .reminder-triangle-line2 { border-left-color: #b7b7dc; }
.reminder-document .reminder-triangle-line2 { border-left-color: #c5dbe4; }
.reminder-accounting .reminder-triangle-line2 { border-left-color: #b8dbd2; }
.reminder-api_message .reminder-triangle-line2 { border-left-color: #a6d6ff; }

.reminder-container-comment .reminder-mini-buttons-triangle { border-bottom-color: #ffffff; }
.reminder-container-todo .reminder-mini-buttons-triangle { border-bottom-color: #ff6e20; }
.reminder-container-reminder .reminder-mini-buttons-triangle { border-bottom-color: #fdb000; }
.reminder-container-message .reminder-mini-buttons-triangle { border-bottom-color: #4aaa2c; }
.reminder-container-deadline .reminder-mini-buttons-triangle { border-bottom-color: #ea3814; }
.reminder-container-phone_note .reminder-mini-buttons-triangle { border-bottom-color: #e6007e; }
.reminder-container-court_session .reminder-mini-buttons-triangle { border-bottom-color: #b02ac9; }
.reminder-container-progress_note .reminder-mini-buttons-triangle { border-bottom-color: #00b0f3; }
.reminder-container-external_message .reminder-mini-buttons-triangle { border-bottom-color: #04027a; }
.reminder-container-document .reminder-mini-buttons-triangle { border-bottom-color: #5a99b3; }
.reminder-container-accounting .reminder-mini-buttons-triangle { border-bottom-color: #33987f; }
.reminder-container-api_message .reminder-mini-buttons-triangle { border-bottom-color: #008aff; }

.reminder-container-comment .reminder-mini-buttons-inner { background-color: #ffffff; }
.reminder-container-todo .reminder-mini-buttons-inner { background-color: #ff6e20; }
.reminder-container-reminder .reminder-mini-buttons-inner { background-color: #fdb000; }
.reminder-container-message .reminder-mini-buttons-inner { background-color: #4aaa2c; }
.reminder-container-deadline .reminder-mini-buttons-inner { background-color: #ea3814; }
.reminder-container-phone_note .reminder-mini-buttons-inner { background-color: #e6007e; }
.reminder-container-court_session .reminder-mini-buttons-inner { background-color: #b02ac9; }
.reminder-container-progress_note .reminder-mini-buttons-inner { background-color: #00b0f3; }
.reminder-container-external_message .reminder-mini-buttons-inner { background-color: #04027a; }
.reminder-container-document .reminder-mini-buttons-inner { background-color: #5a99b3; }
.reminder-container-accounting .reminder-mini-buttons-inner { background-color: #33987f; }
.reminder-container-api_message .reminder-mini-buttons-inner { background-color: #008aff; }

.reminder-container-comment .reminder-outside-triangle { border-left-color: #ffffff; }
.reminder-container-todo .reminder-outside-triangle { border-left-color: #ff6e20; }
.reminder-container-reminder .reminder-outside-triangle { border-left-color: #fdb000; }
.reminder-container-message .reminder-outside-triangle { border-left-color: #4aaa2c; }
.reminder-container-deadline .reminder-outside-triangle { border-left-color: #ea3814; }
.reminder-container-phone_note .reminder-outside-triangle { border-left-color: #e6007e; }
.reminder-container-court_session .reminder-outside-triangle { border-left-color: #b02ac9; }
.reminder-container-progress_note .reminder-outside-triangle { border-left-color: #00b0f3; }
.reminder-container-external_message .reminder-outside-triangle { border-left-color: #04027a; }
.reminder-container-document .reminder-outside-triangle { border-left-color: #5a99b3; }
.reminder-container-accounting .reminder-outside-triangle { border-left-color: #33987f; }
.reminder-container-api_message .reminder-outside-triangle { border-left-color: #008aff; }

.reminder-container-comment .reminder-read span { background-color: #ffffff; }
.reminder-container-todo .reminder-read span { background-color: #ff6e20; }
.reminder-container-reminder .reminder-read span { background-color: #fdb000; }
.reminder-container-message .reminder-read span { background-color: #4aaa2c; }
.reminder-container-deadline .reminder-read span { background-color: #ea3814; }
.reminder-container-phone_note .reminder-read span { background-color: #e6007e; }
.reminder-container-court_session .reminder-read span { background-color: #b02ac9; }
.reminder-container-progress_note .reminder-read span { background-color: #00b0f3; }
.reminder-container-external_message .reminder-read span { background-color: #04027a; }
.reminder-container-document .reminder-read span { background-color: #5a99b3; }
.reminder-container-accounting .reminder-read span { background-color: #33987f; }
.reminder-container-api_message .reminder-read span { background-color: #008aff; }

.reminder-container-comment .reminder-mini-buttons button { color: black; }

.reminder-container-message .reminder-answer-to-inner { background-color: #c7d3c3; border-left-color: #4aaa2c; }
.reminder-container-message .reminder-answer-triangle { border-bottom-color: #c0e1b5; }
.reminder-container-external_message .reminder-answer-to-inner { background-color: #b3b3c5; border-left-color: #04027a; }
.reminder-container-external_message .reminder-answer-triangle { border-bottom-color: #b7b7dc; }
.reminder-container-api_message .reminder-answer-to-inner { background-color: #d6ecff; border-left-color: #008aff; }
.reminder-container-api_message .reminder-answer-triangle { border-bottom-color: #a6d6ff; }

/* due */
.reminder-due.reminder-todo { background-color: #ff9d67; }
.reminder-due.reminder-reminder { background-color: #fdcc54; }
.reminder-due.reminder-deadline { background-color: #f1785f; }
.reminder-due.reminder-court_session { background-color: #ca6bdb; }

.reminder-due.reminder-todo .reminder-triangle-line2 { border-left-color: #ff9d67; }
.reminder-due.reminder-reminder .reminder-triangle-line2 { border-left-color: #fdcc54; }
.reminder-due.reminder-deadline .reminder-triangle-line2 { border-left-color: #f1785f; }
.reminder-due.reminder-court_session .reminder-triangle-line2 { border-left-color: #ca6bdb; }

/* overdue */
.reminder-overdue.reminder-todo { background-color: #ff6e20; }
.reminder-overdue.reminder-reminder { background-color: #fdb000; }
.reminder-overdue.reminder-deadline { background-color: #ea3814; }
.reminder-overdue.reminder-court_session { background-color: #b02ac9; }

.reminder-overdue.reminder-todo .reminder-triangle-line2 { border-left-color: #ff6e20; }
.reminder-overdue.reminder-reminder .reminder-triangle-line2 { border-left-color: #fdb000; }
.reminder-overdue.reminder-deadline .reminder-triangle-line2 { border-left-color: #ea3814; }
.reminder-overdue.reminder-court_session .reminder-triangle-line2 { border-left-color: #b02ac9; }


/* --------------- */
/* reminder editor */
/* ----------------*/
.reminder-editor-backdrop { position: fixed; left: 0; top: 0; width: 100vw; height: 100vh; background-color: rgba(0,0,0,0.2); z-index: 20;
							display: none; }
.reminder-editor { width: 1030px; position: absolute; top: 180px; right: 50px; max-width: calc(100vw - 100px - 30px);
				   box-shadow: 1px 1px 7px 2px rgba(0,0,0,0.5); border-radius: 4px 4px 4px 4px; z-index: 21; display: none; }
.reminder-editor-close { line-height: 0; display: block; float: right; background-color: transparent; border: none; font-size: 20px;
						  margin: -3px 4px 0 0; padding: 0; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
.reminder-editor-close:hover { color: #dbdbdb; }
.reminder-editor-header { text-align: center; color: white; font-size: 12px; font-weight: bold; height: 28px; padding-top: 5px; position: relative;
						  background-color: var(--main-color); border-radius: 4px 4px 0 0; border-left: 2px solid var(--main-color); border-top: 2px solid var(--main-color);
						  border-right: 2px solid var(--main-color); }
.reminder-editor-body { background-color: white; padding: 20px 20px 10px 20px; border-radius: 0 0 4px 4px; border-left: 2px solid white;
						border-bottom: 2px solid white; border-right: 2px solid white; max-height: calc(100vh - 400px); overflow: auto; }

/* type selector */
.reminder-type-selector-list { display: flex; flex-direction: row; flex-wrap: wrap; }
.reminder-type-selector { flex: none; margin: 0 5px 0 5px; width: 88px; height: 75px; }
.reminder-type-selector input[type="radio"] + label { border-color: #b0b0b0; }
.reminder-type-selector input[type="radio"] + label span { color: #b0b0b0; }
.reminder-type-selector input[type="radio"] + label svg path { fill: #b0b0b0; }
.reminder-type-selector input[type="radio"]:not(:checked), .reminder-type-selector input[type="radio"]:checked
							  { margin: 0; position: absolute; left: -9999px; }
.reminder-type-selector label { display: flex; flex-direction: column; flex-wrap: nowrap; align-items: center; position: relative; cursor: pointer;
								border: 1px solid transparent; border-radius: 6px; text-align: center; padding: 15px 5px 5px 5px;
								font-size: 10px; font-weight: 600; border-color: #b0b0b0; }
.reminder-type-selector span { display: block; padding-top: 10px; }
.reminder-type-selector svg { display: block; width: 24px; height: 24px; }

.reminder-type-selector input[type="radio"]:checked + label span { color: #ffffff; }
.reminder-type-selector input[type="radio"]:checked + label svg path { fill: #ffffff; }
.reminder-type-selector.reminder-type-selector-comment input[type="radio"]:checked + label { border-color: #e6e6e6; background-color: #e6e6e6; }
.reminder-type-selector.reminder-type-selector-comment input[type="radio"]:checked + label span { color: #000000; }
.reminder-type-selector.reminder-type-selector-comment input[type="radio"]:checked + label svg path { fill: #000000; }
.reminder-type-selector.reminder-type-selector-message input[type="radio"]:checked + label { border-color: #4aaa2c; background-color: #4aaa2c; }
.reminder-type-selector.reminder-type-selector-external_message input[type="radio"]:checked + label { border-color: #04027a; background-color: #04027a; }
.reminder-type-selector.reminder-type-selector-todo input[type="radio"]:checked + label { border-color: #ff6e20; background-color: #ff6e20; }
.reminder-type-selector.reminder-type-selector-reminder input[type="radio"]:checked + label { border-color: #fdb000; background-color: #fdb000; }
.reminder-type-selector.reminder-type-selector-phone_note input[type="radio"]:checked + label { border-color: #e6007e; background-color: #e6007e; }
.reminder-type-selector.reminder-type-selector-progress_note input[type="radio"]:checked + label { border-color: #00b0f3; background-color: #00b0f3; }
.reminder-type-selector.reminder-type-selector-deadline input[type="radio"]:checked + label { border-color: #ea3814; background-color: #ea3814; }
.reminder-type-selector.reminder-type-selector-court_session input[type="radio"]:checked + label { border-color: #b02ac9; background-color: #b02ac9; }
.reminder-type-selector.reminder-type-selector-api_message input[type="radio"]:checked + label { border-color: #008aff; background-color: #008aff; }

/* text */
.reminder-editor-text { height: auto; }
.reminder-editor-text textarea { min-height: 60px; max-height: 400px; }

/* time */
.reminder-editor-time { width: 30px; text-align: right; }

/* --------------- */
/* reminder filter */
/* ----------------*/
.reminder-filter-backdrop { position: fixed; left: 0; top: 0; width: 100vw; height: 100vh; background-color: rgba(0,0,0,0.2); z-index: 20;
							display: none; }
.reminder-filter { width: 450px; position: absolute; top: 100px; right: 70px; box-shadow: 1px 1px 7px 2px rgba(0,0,0,0.5);
				   border-radius: 4px 4px 4px 4px; z-index: 21; display: none; }
.reminder-filter-close { line-height: 0; display: block; float: right; background-color: transparent; border: none; font-size: 20px;
						  margin: -3px 4px 0 0; padding: 0; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
.reminder-filter-close:hover { color: #dbdbdb; }
.reminder-filter-header { text-align: center; color: white; font-size: 12px; font-weight: bold; height: 28px; padding-top: 5px; position: relative;
						  background-color: var(--main-color); border-radius: 4px 4px 0 0; border-left: 2px solid var(--main-color); border-top: 2px solid var(--main-color);
						  border-right: 2px solid var(--main-color); }
.reminder-filter-body { background-color: white; padding: 20px 20px 10px 20px; border-radius: 0 0 4px 4px; border-left: 2px solid white;
						border-bottom: 2px solid white; border-right: 2px solid white; }

/* type selector */
.reminder-filter-type-selector-list { display: flex; flex-direction: row; flex-wrap: wrap; }
.reminder-filter-type-selector { margin: 0 5px 0 5px; width: 89px; }
.reminder-filter-type-selector input[type="checkbox"]:not(:checked), .reminder-filter-type-selector input[type="checkbox"]:checked
					{ margin: 0; position: absolute; left: -9999px; }
.reminder-filter-type-selector label { display: flex; flex-direction: column; flex-wrap: nowrap; align-items: center; position: relative;
									   cursor: pointer; border: 1px solid transparent; border-radius: 6px; text-align: center;
									   padding: 15px 5px 5px 5px; font-size: 10px; font-weight: 600; border-color: #b0b0b0; }
.reminder-filter-type-selector span { display: block; padding-top: 10px; }
.reminder-filter-type-selector svg { display: block; width: 24px; height: 24px; }
.reminder-filter-type-selector input[type="checkbox"]:not(:checked) + label span { color: #b0b0b0; }
.reminder-filter-type-selector input[type="checkbox"]:not(:checked) + label svg path { fill: #b0b0b0; }
.reminder-filter-type-selector input[type="checkbox"]:checked + label span { color: #ffffff; }
.reminder-filter-type-selector input[type="checkbox"]:checked + label svg path { fill: #ffffff; }


.reminder-filter-type-selector.reminder-filter-type-selector-comment input[type="checkbox"]:checked + label { border-color: #e6e6e6; background-color: #e6e6e6; }
.reminder-filter-type-selector.reminder-filter-type-selector-comment input[type="checkbox"]:checked + label span { color: #000000; }
.reminder-filter-type-selector.reminder-filter-type-selector-comment input[type="checkbox"]:checked + label svg path { fill: #000000; }
.reminder-filter-type-selector.reminder-filter-type-selector-message input[type="checkbox"]:checked + label { border-color: #4aaa2c; background-color: #4aaa2c; }
.reminder-filter-type-selector.reminder-filter-type-selector-external_message input[type="checkbox"]:checked + label { border-color: #04027a; background-color: #04027a; }
.reminder-filter-type-selector.reminder-filter-type-selector-todo input[type="checkbox"]:checked + label { border-color: #ff6e20; background-color: #ff6e20; }
.reminder-filter-type-selector.reminder-filter-type-selector-reminder input[type="checkbox"]:checked + label { border-color: #fdb000; background-color: #fdb000; }
.reminder-filter-type-selector.reminder-filter-type-selector-phone_note input[type="checkbox"]:checked + label { border-color: #e6007e; background-color: #e6007e; }
.reminder-filter-type-selector.reminder-filter-type-selector-progress_note input[type="checkbox"]:checked + label { border-color: #00b0f3; background-color: #00b0f3; }
.reminder-filter-type-selector.reminder-filter-type-selector-deadline input[type="checkbox"]:checked + label { border-color: #ea3814; background-color: #ea3814; }
.reminder-filter-type-selector.reminder-filter-type-selector-court_session input[type="checkbox"]:checked + label { border-color: #b02ac9; background-color: #b02ac9; }
.reminder-filter-type-selector.reminder-filter-type-selector-document input[type="checkbox"]:checked + label { border-color: #5a99b3; background-color: #5a99b3; }
.reminder-filter-type-selector.reminder-filter-type-selector-accounting input[type="checkbox"]:checked + label { border-color: #33987f; background-color: #33987f; }
.reminder-filter-type-selector.reminder-filter-type-selector-api_message input[type="checkbox"]:checked + label { border-color: #04027a; background-color: #04027a; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* dashboard */
.dashboard { position: absolute; bottom: 0; left: 0; right: 0px; top: 0; padding: 15px 15px 20px 15px;  display: grid;
			 grid-template-columns: repeat(12, minmax(0, 1fr)); grid-template-rows: repeat(6, minmax(0, 1fr)); column-gap: 5px; row-gap: 20px;
			 background-repeat: no-repeat; background-size: cover; background-position: center center; }
.dashboard_widget { display: flex; flex-direction: column; background-color: transparent; padding: 5px 10px 5px 5px;
					border-right: 1px solid #c6c6c6; overflow: hidden; }
.dashboard_widget_header { margin-bottom: 10px; width: 100%; display: flex; flex-direction: row; color: #4aab2a; align-items: center; }
.dashboard_widget_icon { width: 30px; height: 30px; margin-right: 5px; }
.dashboard_widget_icon svg { width: 30px; height: 30px; }
.dashboard_widget_title { flex: 1 1 0; font-size: 17px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dashboard_widget_spinner { display: none; }
.dashboard_widget_buttons { display: flex; flex-direction: row; align-items: center; padding-left: 10px; }
.dashboard_widget_inner { flex: 1 1 100%; overflow: auto; height: 100%; }

/* settings button */
button.dashboard-settings-btn, button.dashboard-settings-btn:focus { width: 24px; height: 24px; padding: 0; line-height: 1; font-size: 1px; }
.dashboard-settings-btn svg { width: 20px; height: 20px; }
.dashboard-settings-btn svg path { fill: white; }
button.dashboard-settings-btn:active { padding: 0; top: -2px; }
button.dashboard-settings-btn:active svg { width: 18px; height: 18px;  }

/* --------------- */
/* reminder widget */
/* --------------- */
.dashboard_widget_reminder .dashboard_widget_footer { font-size: 12px; font-weight: 600;padding-left: 20px;
													  margin-top: 3px; padding-top: 5px; border-top: 2px solid #c6c6c6; }
.dashboard-reminder-read-all { -webkit-appearance: none; -moz-appearance: none; appearance: none; height: 20px; line-height: 20px;
							   font-size: 10px; background-color: transparent; border: 1px solid white; margin-right: 5px;
							   border-radius: 4px; padding: 0 4px 0 4px; }
.dashboard-reminder-read-all:hover { background-color: #f0f0f0; }
.dashboard-reminder-read-all:active { position: relative; top: 1px; }
.dashboard-reminder-sort { -webkit-appearance: none; -moz-appearance: none; appearance: none; font-size: 20px; border: none;
						   background-color: transparent; }
.dashboard-reminder-sort:hover { background-color: transparent; filter: brightness(120%); }

#dashboard_widget_comment .dashboard_widget_icon svg path { fill: #000000; }
#dashboard_widget_all_message .dashboard_widget_icon svg path { fill: #4aaa2c; }
#dashboard_widget_private_message .dashboard_widget_icon svg path { fill: #4aaa2c; }
#dashboard_widget_public_message .dashboard_widget_icon svg path { fill: #4aaa2c; }
#dashboard_widget_external_message .dashboard_widget_icon svg path { fill: #04027a; }
#dashboard_widget_todo .dashboard_widget_icon svg path { fill: #ff6e20; }
#dashboard_widget_reminder .dashboard_widget_icon svg path { fill: #fdb000; }
#dashboard_widget_phone_note .dashboard_widget_icon svg path { fill: #e6007e; }
#dashboard_widget_progress_note .dashboard_widget_icon svg path { fill: #00b0f3; }
#dashboard_widget_deadline .dashboard_widget_icon svg path { fill: #ea3814; }
#dashboard_widget_court_session .dashboard_widget_icon svg path { fill: #b02ac9; }
#dashboard_widget_document .dashboard_widget_icon svg path { fill: #5a99b3; }
#dashboard_widget_accounting .dashboard_widget_icon svg path { fill: #33987f; }
#dashboard_widget_api_message .dashboard_widget_icon svg path { fill: #008aff; }

#dashboard_widget_comment .dashboard_widget_header { color: #000000; }
#dashboard_widget_all_message .dashboard_widget_header { color: #4aaa2c; }
#dashboard_widget_private_message .dashboard_widget_header { color: #4aaa2c; }
#dashboard_widget_public_message .dashboard_widget_header { color: #4aaa2c; }
#dashboard_widget_external_message .dashboard_widget_header { color: #04027a; }
#dashboard_widget_todo .dashboard_widget_header { color: #ff6e20; }
#dashboard_widget_reminder .dashboard_widget_header { color: #fdb000; }
#dashboard_widget_phone_note .dashboard_widget_header { color: #e6007e; }
#dashboard_widget_progress_note .dashboard_widget_header { color: #00b0f3; }
#dashboard_widget_deadline .dashboard_widget_header { color: #ea3814; }
#dashboard_widget_court_session .dashboard_widget_header { color: #b02ac9; }
#dashboard_widget_document .dashboard_widget_header { color: #5a99b3; }
#dashboard_widget_accounting .dashboard_widget_header { color: #33987f; }
#dashboard_widget_api_message .dashboard_widget_header { color: #008aff; }

#dashboard_widget_comment .dashboard-reminder-read-all { border-color: #000000; }
#dashboard_widget_all_message .dashboard-reminder-read-all { border-color: #4aaa2c; }
#dashboard_widget_private_message .dashboard-reminder-read-all { border-color: #4aaa2c; }
#dashboard_widget_public_message .dashboard-reminder-read-all { border-color: #4aaa2c; }
#dashboard_widget_external_message .dashboard-reminder-read-all { border-color: #04027a; }
#dashboard_widget_todo .dashboard-reminder-read-all { border-color: #ff6e20; }
#dashboard_widget_reminder .dashboard-reminder-read-all { border-color: #fdb000; }
#dashboard_widget_phone_note .dashboard-reminder-read-all { border-color: #e6007e; }
#dashboard_widget_progress_note .dashboard-reminder-read-all { border-color: #00b0f3; }
#dashboard_widget_deadline .dashboard-reminder-read-all { border-color: #ea3814; }
#dashboard_widget_court_session .dashboard-reminder-read-all { border-color: #b02ac9; }
#dashboard_widget_document .dashboard-reminder-read-all { border-color: #5a99b3; }
#dashboard_widget_accounting .dashboard-reminder-read-all { border-color: #33987f; }
#dashboard_widget_api_message .dashboard-reminder-read-all { border-color: #008aff; }

/*                                */
/* dashboard reminder widget item */
/*                                */
.dashboard-reminder { margin-top: 10px; position: relative; cursor: pointer; }

/* outside header (create date, read flag) */
.dashboard-reminder-outside-header { display: flex; flex-direction: row; min-height: 24px; }
.dashboard-reminder-create-date-container { flex: 1 1 0; display: flex; flex-direction: row; align-items: center; }
.dashboard-reminder-read { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: none; background: transparent;
						   padding: 0 5px 0 0; z-index: 1; }
.dashboard-reminder-read span { display: block; border: 5px solid #ececec; width: 20px; height: 20px; border-radius: 10px;
								background-color: #f1f1f1;
								animation-name: read_button_pulse; animation-duration: 1.7s; animation-timing-function: ease-in-out;
					  			animation-iteration-count: infinite; }
.dashboard-reminder-read:hover span { border-width: 6px; }
.dashboard-reminder-read-read { visibility: hidden; }
.dashboard-reminder-create-date { flex: 1 1 0; font-size: 12px; text-align: left; }

/* item body */
.dashboard-reminder-body { border-left: 2px solid transparent; border-top: 2px solid transparent; position: relative; }
.dashboard-reminder-line-bottom { position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background-color: transparent; z-index: 1; }
.dashboard-reminder-line-right { position: absolute; top: 0; bottom: 0; right: 0; width: 2px; background-color: transparent; z-index: 1; }
.dashboard-reminder-triangle { position: absolute; right: 0; bottom: 0; width: 16px; height: 13px; border-left: 16px solid transparent;
							   border-bottom: 13px solid #ececec; z-index: 2; }
.dashboard-reminder-triangle-line { position: absolute; right: 0; bottom: 0; width: 16px; height: 13px; border-left: 16px solid transparent;
									border-bottom: 13px solid transparent; z-index: 3; }
.dashboard-reminder-triangle-line2 { position: absolute; right: 1.5px; bottom: 1.5px; width: 16px; height: 13px; border-left: 16px solid transparent;
									 border-bottom: 13px solid transparent; z-index: 4; }

/* header, icon, title */
.dashboard-reminder-header { color: black; font-size: 14px; font-weight: 600; height: 28px; margin: 10px 10px 0 0; position: relative;
							 display: flex; flex-direction: row; align-items: flex-start; }
.dashboard-reminder-icon { padding: 0 0 0 10px; font-weight: normal; flex: 0 0 auto; }
.dashboard-reminder-icon img { width: 24px; height: 24px; }
.dashboard-reminder-phone-direction { position: absolute; font-size: 13px; color: #e6007e; }
.dashboard-reminder-phone-direction-incoming { transform: rotate(-45deg); left: 7px; top: -5px; }
.dashboard-reminder-phone-direction-outgoing { transform: rotate(135deg); left: 7px; top: -5px; }
.dashboard-reminder-title { font-size: 12px; font-weight: 700; padding-left: 5px; padding-right: 5px; line-height: 1.2; flex: 1 1 0;
							overflow: hidden; text-overflow: ellipsis; }
.dashboard-reminder-fileno { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dashboard-reminder-rubrum { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* user image */
.dashboard-reminder-user-image img { width: 26px; height: 26px; display: inline; border: 1px solid black; color: green; cursor: pointer; }
.dashboard-reminder-due .dashboard-reminder-user-image img, .dashboard-reminder-overdue .dashboard-reminder-user-image img { border-color: white; }

/* from / to / group */
.dashboard-reminder-from-to { font-size: 11px; font-weight: 600; padding: 10px 10px 10px 15px; }
.dashboard-reminder-from-to em { font-style: normal; font-weight: normal; }
.dashboard-reminder-assigned-user, .dashboard-reminder-assigned-group { padding-right: 15px; }

/* important */
.dashboard-reminder-important { font-size: 16px; font-weight: 900; color: white; background-color: #e62442; width: 20px; height: 20px;
								line-height: 1; border-radius: 10px; text-align: center; position: relative; top: -2px; }
.dashboard-reminder-important span { display: inline-block; position: relative; top: 1.5px; left: 0.5px; }

/* text content */
.dashboard-reminder-text { padding: 0 10px 8px 15px; hyphens: auto; max-height: 66px; overflow: hidden; text-overflow: ellipsis;
						   display: -webkit-box !important; -webkit-line-clamp: 3; -webkit-box-orient: vertical; white-space: normal;
						   font-size: 14px; }

/* document */
.dashboard-reminder-doc-link { padding: 0 10px 8px 15px; cursor: pointer; text-overflow: ellipsis; overflow: hidden; white-space: nowrap;
							   clear: both; }
.dashboard-reminder-doc-link a { color: black; }
.dashboard-reminder-doc-link-share { float: right; margin-right: 10px; font-size: 16px; }

/* address */
.dashboard-reminder-address-link { padding: 0 10px 8px 15px; cursor: pointer; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; }
.dashboard-reminder-address-link a { color: black; }

/* account entry */
.dashboard-reminder-account-link { padding: 0 10px 8px 15px; cursor: pointer; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; }
.dashboard-reminder-account-link a { color: black; }

/* answer expected / answer */
.dashboard-reminder-answer-expected { padding: 5px 10px 10px 15px; border-top: 1px solid #ccc;
									  display: flex; flex-direction: row; flex-wrap: nowrap; }
.dashboard-reminder-answer-info { font-size: 11px; font-weight: 600; display: flex; flex-direction: row; flex-wrap: nowrap;
								  width: calc(100% - 10px); }
.dashboard-reminder-answer-info em { display: block; font-style: normal; font-weight: normal; }
.dashboard-reminder-answer-info a { display: block; color: black; cursor: pointer; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
						  			flex: 1 1 0; }

.dashboard-reminder-answer-to { padding: 5px 7px 5px 7px; cursor: pointer; }
.dashboard-reminder-answer-to-inner { background-color: #c7d3c3; padding: 5px 8px 5px 8px; border-left: 2px solid #4aaa2c; position: relative; }
.dashboard-reminder-answer-date-from { display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: space-between; color: #555555;
									   margin-bottom: 5px; }
.dashboard-reminder-answer-create-date { font-size: 11px; }
.dashboard-reminder-answer-from { font-size: 11px; font-weight: 600; }
.dashboard-reminder-answer-from em { font-style: normal; font-weight: normal;}
.dashboard-reminder-answer-text { font-size: 12px; color: #555555; max-height: 34px; overflow: hidden; text-overflow: ellipsis;
								  display: -webkit-box !important; -webkit-line-clamp: 2; -webkit-box-orient: vertical; white-space: normal; }
.dashboard-reminder-answer-triangle { position: absolute; right: 0; bottom: 0; width: 16px; height: 13px; border-left: 16px solid transparent;
									  border-bottom: 13px solid #c0e1b5; z-index: 2; }

/* date */
.dashboard-reminder-date { padding: 0 10px 8px 15px; font-weight: bold; }
.dashboard-reminder-date-due, .dashboard-reminder-date-overdue { font-size: 12px; font-weight: 600; padding-left: 20px; }

/* phone note */
.dashboard-reminder-call-result { padding: 0 10px 2px 15px; font-weight: 600; }

/* colors */
.dashboard-reminder-comment { background-color: #e6e6e6; border-color: #ffffff; }
.dashboard-reminder-todo { background-color: #ffd9b1; border-color: #ff6e20; }
.dashboard-reminder-reminder { background-color: #fee3a6; border-color: #fdb000; }
.dashboard-reminder-message { background-color: #c0e1b5; border-color: #4aaa2c; }
.dashboard-reminder-deadline { background-color: #f8baad; border-color: #ea3814; }
.dashboard-reminder-phone_note { background-color: #fbd5e9; border-color: #e6007e; }
.dashboard-reminder-court_session { background-color: #e3b5ec; border-color: #b02ac9; }
.dashboard-reminder-progress_note { background-color: #a6e3fb; border-color: #00b0f3; }
.dashboard-reminder-external_message { background-color: #b7b7dc; border-color: #04027a; }
.dashboard-reminder-document { background-color: #c5dbe4; border-color: #5a99b3; }
.dashboard-reminder-accounting { background-color: #b8dbd2; border-color: #33987f; }
.dashboard-reminder-api_message { background-color: #a6d6ff; border-color: #008aff; }

.dashboard-reminder-comment .dashboard-reminder-line-bottom, .dashboard-reminder-comment .dashboard-reminder-line-right { background-color: #ffffff; }
.dashboard-reminder-todo .dashboard-reminder-line-bottom, .dashboard-reminder-todo .dashboard-reminder-line-right { background-color: #ff6e20; }
.dashboard-reminder-reminder .dashboard-reminder-line-bottom, .dashboard-reminder-reminder .dashboard-reminder-line-right { background-color: #fdb000; }
.dashboard-reminder-message .dashboard-reminder-line-bottom, .dashboard-reminder-message .dashboard-reminder-line-right { background-color: #4aaa2c; }
.dashboard-reminder-deadline .dashboard-reminder-line-bottom, .dashboard-reminder-deadline .dashboard-reminder-line-right { background-color: #ea3814; }
.dashboard-reminder-phone_note .dashboard-reminder-line-bottom, .dashboard-reminder-phone_note .dashboard-reminder-line-right { background-color: #e6007e; }
.dashboard-reminder-court_session .dashboard-reminder-line-bottom, .dashboard-reminder-court_session .dashboard-reminder-line-right { background-color: #b02ac9; }
.dashboard-reminder-progress_note .dashboard-reminder-line-bottom, .dashboard-reminder-progress_note .dashboard-reminder-line-right { background-color: #00b0f3; }
.dashboard-reminder-external_message .dashboard-reminder-line-bottom, .dashboard-reminder-external_message .dashboard-reminder-line-right { background-color: #04027a; }
.dashboard-reminder-document .dashboard-reminder-line-bottom, .dashboard-reminder-document .dashboard-reminder-line-right { background-color: #5a99b3; }
.dashboard-reminder-accounting .dashboard-reminder-line-bottom, .dashboard-reminder-accounting .dashboard-reminder-line-right { background-color: #33987f; }
.dashboard-reminder-api_message .dashboard-reminder-line-bottom, .dashboard-reminder-api_message .dashboard-reminder-line-right { background-color: #04027a; }

.dashboard-reminder-comment .dashboard-reminder-triangle-line { border-left-color: #ffffff; }
.dashboard-reminder-todo .dashboard-reminder-triangle-line { border-left-color: #ff6e20; }
.dashboard-reminder-reminder .dashboard-reminder-triangle-line { border-left-color: #fdb000; }
.dashboard-reminder-message .dashboard-reminder-triangle-line { border-left-color: #4aaa2c; }
.dashboard-reminder-deadline .dashboard-reminder-triangle-line { border-left-color: #ea3814; }
.dashboard-reminder-phone_note .dashboard-reminder-triangle-line { border-left-color: #e6007e; }
.dashboard-reminder-court_session .dashboard-reminder-triangle-line { border-left-color: #b02ac9; }
.dashboard-reminder-progress_note .dashboard-reminder-triangle-line { border-left-color: #00b0f3; }
.dashboard-reminder-external_message .dashboard-reminder-triangle-line { border-left-color: #04027a; }
.dashboard-reminder-document .dashboard-reminder-triangle-line { border-left-color: #5a99b3; }
.dashboard-reminder-accounting .dashboard-reminder-triangle-line { border-left-color: #33987f; }
.dashboard-reminder-api_message .dashboard-reminder-triangle-line { border-left-color: #008aff; }

.dashboard-reminder-comment .dashboard-reminder-triangle-line2 { border-left-color: #e6e6e6; }
.dashboard-reminder-todo .dashboard-reminder-triangle-line2 { border-left-color: #ffd9b1; }
.dashboard-reminder-reminder .dashboard-reminder-triangle-line2 { border-left-color: #fee3a6; }
.dashboard-reminder-message .dashboard-reminder-triangle-line2 { border-left-color: #c0e1b5; }
.dashboard-reminder-deadline .dashboard-reminder-triangle-line2 { border-left-color: #f8baad; }
.dashboard-reminder-phone_note .dashboard-reminder-triangle-line2 { border-left-color: #fbd5e9; }
.dashboard-reminder-court_session .dashboard-reminder-triangle-line2 { border-left-color: #e3b5ec; }
.dashboard-reminder-progress_note .dashboard-reminder-triangle-line2 { border-left-color: #a6e3fb; }
.dashboard-reminder-external_message .dashboard-reminder-triangle-line2 { border-left-color: #b7b7dc; }
.dashboard-reminder-document .dashboard-reminder-triangle-line2 { border-left-color: #c5dbe4; }
.dashboard-reminder-accounting .dashboard-reminder-triangle-line2 { border-left-color: #b8dbd2; }
.dashboard-reminder-api_message .dashboard-reminder-triangle-line2 { border-left-color: #a6d6ff; }

.dashboard-reminder-container-comment .dashboard-reminder-read span { background-color: #ffffff; }
.dashboard-reminder-container-todo .dashboard-reminder-read span { background-color: #ff6e20; }
.dashboard-reminder-container-reminder .dashboard-reminder-read span { background-color: #fdb000; }
.dashboard-reminder-container-message .dashboard-reminder-read span { background-color: #4aaa2c; }
.dashboard-reminder-container-deadline .dashboard-reminder-read span { background-color: #ea3814; }
.dashboard-reminder-container-phone_note .dashboard-reminder-read span { background-color: #e6007e; }
.dashboard-reminder-container-court_session .dashboard-reminder-read span { background-color: #b02ac9; }
.dashboard-reminder-container-progress_note .dashboard-reminder-read span { background-color: #00b0f3; }
.dashboard-reminder-container-external_message .dashboard-reminder-read span { background-color: #04027a; }
.dashboard-reminder-container-document .dashboard-reminder-read span { background-color: #5a99b3; }
.dashboard-reminder-container-accounting .dashboard-reminder-read span { background-color: #33987f; }
.dashboard-reminder-api-external_message .dashboard-reminder-read span { background-color: #008aff; }

.dashboard-reminder-container-message .dashboard-reminder-answer-to-inner { background-color: #c7d3c3; border-left-color: #4aaa2c; }
.dashboard-reminder-container-message .dashboard-reminder-answer-triangle { border-bottom-color: #c0e1b5; }
.dashboard-reminder-container-external_message .dashboard-reminder-answer-to-inner { background-color: #b3b3c5; border-left-color: #04027a; }
.dashboard-reminder-container-external_message .dashboard-reminder-answer-triangle { border-bottom-color: #b7b7dc; }
.dashboard-reminder-container-api_message .dashboard-reminder-answer-to-inner { background-color: #b3b3c5; border-left-color: #008aff; }
.dashboard-reminder-container-api_message .dashboard-reminder-answer-triangle { border-bottom-color: #a6d6ff; }

/* due */
.dashboard-reminder-due.dashboard-reminder-todo { background-color: #ff9d67; }
.dashboard-reminder-due.dashboard-reminder-reminder { background-color: #fdcc54; }
.dashboard-reminder-due.dashboard-reminder-deadline { background-color: #f1785f; }
.dashboard-reminder-due.dashboard-reminder-court_session { background-color: #ca6bdb; }

.dashboard-reminder-due.dashboard-reminder-todo .dashboard-reminder-triangle-line2 { border-left-color: #ff9d67; }
.dashboard-reminder-due.dashboard-reminder-reminder .dashboard-reminder-triangle-line2 { border-left-color: #fdcc54; }
.dashboard-reminder-due.dashboard-reminder-deadline .dashboard-reminder-triangle-line2 { border-left-color: #f1785f; }
.dashboard-reminder-due.dashboard-reminder-court_session .dashboard-reminder-triangle-line2 { border-left-color: #ca6bdb; }

/* overdue */
.dashboard-reminder-overdue.dashboard-reminder-todo { background-color: #ff6e20; }
.dashboard-reminder-overdue.dashboard-reminder-reminder { background-color: #fdb000; }
.dashboard-reminder-overdue.dashboard-reminder-deadline { background-color: #ea3814; }
.dashboard-reminder-overdue.dashboard-reminder-court_session { background-color: #b02ac9; }

.dashboard-reminder-overdue.dashboard-reminder-todo .dashboard-reminder-triangle-line2 { border-left-color: #ff6e20; }
.dashboard-reminder-overdue.dashboard-reminder-reminder .dashboard-reminder-triangle-line2 { border-left-color: #fdb000; }
.dashboard-reminder-overdue.dashboard-reminder-deadline .dashboard-reminder-triangle-line2 { border-left-color: #ea3814; }
.dashboard-reminder-overdue.dashboard-reminder-court_session .dashboard-reminder-triangle-line2 { border-left-color: #b02ac9; }


/* ---------------- */
/* case file widget */
/* ---------------- */
.dashboard_widget_case_file .dashboard_widget_footer { font-size: 12px; font-weight: 600;padding-left: 20px;
													   margin-top: 3px; padding-top: 5px; border-top: 2px solid #c6c6c6; }

.dashboard-case_file-sort { -webkit-appearance: none; -moz-appearance: none; appearance: none; font-size: 20px; border: none;
							background-color: transparent; }
.dashboard-case_file-sort:hover { background-color: transparent; filter: brightness(120%); }

/*                                */
/* dashboard reminder widget item */
/*                                */
.dashboard-case_file { margin-top: 10px; position: relative; cursor: pointer; }

/* outside header (create date) */
.dashboard-case_file-outside-header { display: flex; flex-direction: row; min-height: 24px; }
.dashboard-case_file-create-date-container { flex: 1 1 0; display: flex; flex-direction: row; align-items: center; }
.dashboard-case_file-create-date { flex: 1 1 0; font-size: 12px; text-align: left; }

/* item body */
.dashboard-case_file-body { border-left: 2px solid transparent; border-top: 2px solid transparent; position: relative;
							background-color: #e6e6e6; border-color: #4aaa2c; }
.dashboard-case_file-line-bottom { position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background-color: transparent; z-index: 1;
								   background-color: #4aaa2c; }
.dashboard-case_file-line-right { position: absolute; top: 0; bottom: 0; right: 0; width: 2px; background-color: transparent; z-index: 1;
								  background-color: #4aaa2c; }
.dashboard-case_file-triangle { position: absolute; right: 0; bottom: 0; width: 16px; height: 13px; border-left: 16px solid transparent;
							   border-bottom: 13px solid #ececec; z-index: 2; }
.dashboard-case_file-triangle-line { position: absolute; right: 0; bottom: 0; width: 16px; height: 13px; border-left: 16px solid transparent;
									border-bottom: 13px solid transparent; z-index: 3; border-left-color: #4aaa2c; }
.dashboard-case_file-triangle-line2 { position: absolute; right: 1.5px; bottom: 1.5px; width: 16px; height: 13px; border-left: 16px solid transparent;
									 border-bottom: 13px solid transparent; z-index: 4; border-left-color: #e6e6e6; }

/* header, icon, title */
.dashboard-case_file-header { color: black; font-size: 14px; font-weight: 600; height: 28px; margin: 10px 10px 0 0; position: relative;
							 display: flex; flex-direction: row; align-items: flex-start; }
.dashboard-case_file-icon { padding: 0 0 0 10px; font-weight: normal; flex: 0 0 auto; }
.dashboard-case_file-icon img { width: 24px; height: 24px; }
.dashboard-case_file-title { font-size: 12px; font-weight: 700; padding-left: 5px; padding-right: 5px; line-height: 1.2; flex: 1 1 0;
							overflow: hidden; text-overflow: ellipsis; }
.dashboard-case_file-fileno { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dashboard-case_file-rubrum { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* user image */
.dashboard-case_file-user-image img { width: 26px; height: 26px; display: inline; border: 1px solid black; color: green; cursor: pointer; }

/* from / to / group */
.dashboard-case_file-from-to { font-size: 11px; font-weight: 600; padding: 10px 10px 10px 15px; }
.dashboard-case_file-from-to em { font-style: normal; font-weight: normal; }

/* text content */
.dashboard-case_file-text { padding: 0 10px 8px 15px; hyphens: auto; max-height: 66px; overflow: hidden; text-overflow: ellipsis;
						   display: -webkit-box !important; -webkit-line-clamp: 3; -webkit-box-orient: vertical; white-space: normal;
						   font-size: 14px; }

/* --------------- */
/* settings dialog */
/* --------------- */
.dashboard-settings .modal-dialog { width: 1300px; }
.dashboard-settings .modal-body { height: 795px; display: flex; flex-direction: column; }
.dashboard-settings-dialog-row { clear: both; margin-bottom: 20px; }
.dashboard-settings-container-row { flex: 1 1 0; clear: both; }
.dashboard-settings-container { display: flex; flex-direction: row; clear: both; padding-left: 15px; padding-right: 15px; height: 100%; }

.dashboard-settings-sidebar { width: 250px; margin-left: 15px; display: flex; flex-direction: column; }
.dashboard-settings-rowscols { padding: 10px 10px 10px 10px;}
.dashboard-settings-count-button { display: flex; flex-direction: row; align-items: center; padding-bottom: 5px; }
.dashboard-settings-count-button label { flex: 1 1 0; }
.dashboard-settings-count-button-inner span { display: inline-block; width: 20px; text-align: center; }

.dashboard-settings-widgetlist { background-color: white; border: 1px solid #c6c6c6; flex: 1 1 0; display: flex; flex-direction: column; }
.dashboard-settings-list-header { background-color: var(--main-color); color: white; font-weight: bold; padding: 0 15px 0 15px; height: 32px; line-height: 32px; }
.dashboard-settings-list-content-container { flex: 1 1 0; overflow: auto; }
.dashboard-settings-list-content { width: 100%; height: auto; display: flex; flex-direction: column; align-items: center;
								   padding: 15px 0 15px 0; gap: 10px; }

.dashboard-settings-grid-container { flex: 1 1 0; position: relative; }
.dashboard-settings-grid-background { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr));
									  grid-template-rows: repeat(6, minmax(0, 1fr)); column-gap: 2px; row-gap: 2px;
									  background-color: #c6c6c6; width: 100%; height: 100%; border: 2px solid #c6c6c6; }
.dashboard-settings-grid-bgr-box { background-color: #ececec; }
.dashboard-settings-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); grid-template-rows: repeat(6, minmax(0, 1fr));
						   column-gap: 2px; row-gap: 2px; position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 1; }
.dashboard-settings-grid-lines { border-collapse: collapse; table-layout: fixed; pointer-events: none;
								 position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 2; opacity: 0.5; }
.dashboard-settings-grid-lines tr { pointer-events: none; }
.dashboard-settings-grid-lines td { border: 2px solid #c6c6c6; background-color: transparent; pointer-events: none; }

.dashboard-settings-widget { display: flex; flex-direction: column; align-items: center; padding: 15px 5px 15px 5px; cursor: pointer;
							 position: relative; user-select: none; overflow: hidden; }
.dashboard-settings-widget svg { width: 30px; height: 30px; }
.dashboard-settings-widget div { flex: 1 1 0; }
.dashboard-settings-widget span { display: block; transform: rotate(90deg); position: relative; top: 70px; font-weight: bold; white-space: nowrap; }

.dashboard-settings-widget-template { display: flex; flex-direction: column; align-items: center; padding: 10px 5px 10px 5px; cursor: pointer;
							 		  position: relative; user-select: none; overflow: hidden; width: 120px; height: 100px;
							 		  border-radius: 4px; }
.dashboard-settings-widget-template svg { width: 30px; height: 30px; }
.dashboard-settings-widget-template div { flex: 1 1 0; margin-top: 10px; }
.dashboard-settings-widget-template span { display: block; font-weight: normal; text-align: center; }
.dashboard-settings-widget.drag, .dashboard-settings-widget-template.drag { cursor: move; }


.dashboard-settings-handle-top, .dashboard-settings-handle-bottom { position: absolute; width: 30px; height: 5px;
	background-image: repeating-linear-gradient(30deg, transparent, transparent 3px, #888888 3px, #888888 6px);
	border: 1px solid #888888; }
.dashboard-settings-handle-left, .dashboard-settings-handle-right { position: absolute; width: 5px; height: 30px;
	background-image: repeating-linear-gradient(60deg, transparent, transparent 3px, #888888 3px, #888888 6px);
	border: 1px solid #888888; }
.dashboard-settings-handle-top { top: -1px; cursor: ns-resize; }
.dashboard-settings-handle-bottom { bottom: -1px; cursor: ns-resize; }
.dashboard-settings-handle-left { left: -1px; top: calc(50% - 30px); cursor: ew-resize; }
.dashboard-settings-handle-right { right: -1px; top: calc(50% - 30px); cursor: ew-resize; }
.drag-hide { transition: 0.01s; transform: translateX(-9999px); }

/* damage cuts */
.damage_cut_editor_container { height: 300px; }
.damage_cut_editor { height: 100%; overflow: scroll; }
.damage_cut_editor > div, .signature_editor > div:focus, .signature_editor > div:active { outline: none; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* user management */
.reminder-event-grid { height: 350px; max-width: calc(100% - 40px); }
.org-info-grid { height: 350px; max-width: calc(100% - 40px); }
.team-grid { margin-top: 10px; min-height: 350px; }
.user-grid { margin-top: 10px; min-height: 350px; }
.category-grid { max-height: 150px; max-width: calc(100% - 40px); }
.bankaccount-grid { max-height: 100px; max-width: calc(100% - 40px); }
.org-reminder-event-grid { max-height: 150px; max-width: calc(100% - 40px); }
.team-category-grid { min-height: 250px; max-height: 400px; max-width: calc(100% - 40px); }
.user-team-split-area { display: flex; flex-direction: column; padding: 12px 15px 15px 15px; width: 100%; height: auto; overflow: auto; }
.user-team-form { width: 100%; display: flex; flex-direction: column; flex: 1 1 0; }
.user-team-split-upper-area { flex: 1 1 0; }
.user-team-split-lower-area { flex: none; }
.user-filter { height: 26px; width: 200px; margin-right: 16px; display: inline-block; }
.user-add-btn { width: auto; padding: 1px 5px 1px 5px; position: relative; top: -2px; }

.user-team-area h3 { font-size: 16px; font-weight: bold; margin-top: 0; padding-top: 5px; white-space: nowrap; text-overflow: ellipsis; }
.user-team-area.flex-row { column-gap: 0; }
.user-team-area .flex-col { width: calc(100% / 3 + 15px); padding-right: 30px; }
.user-team-area .flex-col:last-child { padding-right: 0; width: calc(100% / 3 - 30px); }
.user-list { flex: 2 2 0; }
.team-list { flex: 1 1 0; }

.user-team-btn-container { width: 100%; margin-top: 20px; padding-left: 15px; padding-right: 15px; }
.user-team-btn-container .left { float: left; }
.user-team-btn-container .right { float: right; }

.user-editor-photo { position: absolute; left: 30px; top: 17px; cursor: pointer; }
.user-editor-photo img { width: 60px; height: 60px; border: 1px solid #999; display: block; }

div.user-photo-popup { opacity: 1!important; }
div.user-photo-popup .tooltip-inner { max-width: unset; padding: 0; }
.user-photo-popup img { width: 100px; height: 100px; border: 1px solid #333; display: block; }

/*signature editor*/
.signature_editor_container { height: 300px; }
.signature_editor { height: 100%; overflow: scroll; }
.signature_editor > div, .signature_editor > div:focus, .signature_editor > div:active { outline: none; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* import documents */
.import-dialog { container: import_dialog / size; }
.import-dialog .doc_mini_thumb_inner { margin-bottom: 0; }
.import-dialog .doc_mini-preview { min-height: 200px; }
.import-dialog .doc_mini-case_file { font-size: 14px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: white;
									 margin-bottom: 1px; margin-top: 1px; padding-top: 5px; margin-right: 7px; border-top: 1px solid white; }
.import-dialog .doc_mini-assignment { font-size: 10px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: white;
									  margin-bottom: 4px; margin-top: 1px; }
.import-dialog .doc_mini-sent_back { font-size: 14px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: white;
									 margin-bottom: 1px; margin-top: 1px; padding-top: 5px; margin-right: 7px; border-top: 1px solid white; }
.import-dialog .doc_mini-sent_back_by { font-size: 10px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: white;
									  margin-bottom: 4px; margin-top: 1px; }
.import-dialog .doc_mini_incoming_outgoing_icon_inner { height: calc(100% - 30px); }
.import-dialog .doc_mini-sent_back_icon { font-size: 18px; color: white; display: block; position: relative; left: 15px; top: -7px; }
.import-dialog .doc_mini_properties { position: relative; }
.import-dialog .doc_mini-selected { position: absolute; left: 12px; bottom: 12px; }
.import-dialog .doc_mini-selected input { transform: scale(1.5); }
.import-dialog .doc_mini_stack_button { bottom: 6px; }
.import-dialog .doc_mini-remove button { background-color: transparent; border-color: #959896; position: absolute; left: 7px; bottom: 42px;
										 padding: 0; width: 22px; }
.import-dialog .doc_mini-remove button.btn-slash:after { border: 1px solid #5a99b3; background-color: white; width: 4px; }
.import-name-cat { align-items: start; }
.import-doc-category { min-width: 100px; max-width: 300px; flex: 1 1 auto; }
.import-doc-category > input { width: 100%!important; }

/*.doc-import-grid-container { height: calc(100% - 80px); }
.doc-import-grid { height: 100%; }
.doc-import-grid .ui-grid-row:nth-child(odd):hover .ui-grid-cell { background-color: #dbdbdb; }
.doc-import-grid .ui-grid-row:nth-child(even):hover .ui-grid-cell { background-color: white; }
.doc-import-grid img { display: block; height: 95%; max-height: 95%; border: 1px solid #999999; margin: 0 auto 0 auto; }
.doc-import-grid .doc-import-name { font-weight: bold; }
.doc-import-grid .doc-import-date { font-weight: normal; }
.doc-import-grid .doc-import-file { font-weight: normal; margin-top: 38px; }
.doc-import-grid .doc-import-assignment { font-weight: normal; font-size: 10px; }
.doc-import-grid .doc-import-select { display: table-cell; vertical-align: middle; width: 50px; height: 140px; padding-left: 15px; }

.doc-import-pdf-container { height: calc(100% - 80px); }
.doc-import-pdf-area { height: 100%; max-height: 100%; position: relative; }
.doc-import-pdf { position: absolute; left: 0; top: 0; bottom: 0; right: 15px; overflow: auto; padding: 0; }
.doc-import-pdf .page { margin: 0 auto 20px auto; }

.doc-import_properties_edit { height: 40px; }
.doc-import_properties_edit > .doc-name { }
.doc-import_properties_edit > .doc-category { max-width: 200px; min-width: 200px; }
.doc-import_properties_edit > .doc-date { width: 140px; }
.doc-import_properties_edit > .doc-scope { width: 12%; }
.doc-import_properties_edit > .doc-casefile { width: 70%; }
.doc-import_properties_buttons { width: 70px; }*/

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* bank accounts */
.bank_entry_editor .modal-dialog { width: 1400px; max-width: 100%; }
.bank_entry_editor .modal-dialog.expanded { width: calc(100vw - 30px); transition: none; }
.bank_entry_editor .modal-dialog.expanded .modal-body { height: calc(100vh - 190px); display: flex; flex-direction: row; transition: none; }
.bank_entry_editor .bank-entry-left { width: 100%; transition: none; }
.bank_entry_editor .bank-entry-right { display: none; transition: none; }

.bank_entry_editor .case-file-flags { float: right; margin-top: -10px; }

.bank_entry_editor .expanded .bank-entry-left { width: auto; flex: 13; padding-right: 15px; display: flex; flex-direction: column; overflow: hidden; }
.bank_entry_editor .expanded .bank-entry-right { display: block; flex: 10; padding-left: 15px; }

.bank_assignment_editor .modal-dialog { width: 1300px; }
.bank-assign-casefile { max-width: 600px; }
.bank-assign-search input { max-width: 300px; }
.bank-assignment-grid { margin-top: 2px; height: 250px; width: 100%; border: none; }
.bank-document-btn { margin-left: 10px; }

.account-entry-sum { margin-left: 15px; }
.account-entry-sum .col1 { width: 90px; }
.account-entry-sum .col2 { width: 90px; text-align: right; }

/* damages */
.account-entry-damages { padding: 0 15px 0 15px; width: 100%; }
.account-entry-damages h3 { font-size: 16px; font-weight: bold; margin-top: 0; }
.account-entry-damages .col-sm-6 > p { padding-top: 0; padding-bottom: 0; text-align: right; }
.account-entry-damages .col-sm-6 { padding-left: 0; padding-right: 0; }

.bank_entry_editor .modal-dialog.expanded .account-entry.row { margin-left: -5px; margin-right: -5px; }
.bank_entry_editor .modal-dialog.expanded .col-sm-4 { padding-left: 5px; padding-right: 5px; font-size: 13px; }

.bank-account-selector .ui-select-choices { width: 150%; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* version log */
.version-log-entry h5 { font-size: 22px; margin-bottom: 15px; }
.version-log-entry h6 { font-size: 16px; margin-bottom: 15px; }
.version-log-entry hr { margin-top: 25px; }
.version-log-cache-info { margin-top: 40px; margin-bottom: 20px; }
.version-log-cache-info h5 { font-size: 20px; margin-bottom: 15px; }
.version-log-cache-info-btn { text-align: center; margin-top: 20px; }

.cache-info {}
.cache-info h5 { font-size: 22px; margin-bottom: 15px; }
.cache-info ol, .cache-info ul { font-size: 18px; }
.cache-info li { line-height: 2; }
.cache-info-screenshots { margin-top: 40px; }
.cache-info-screenshots figure { margin-bottom: 25px; text-align: center; }
.cache-info-screenshots figure img { max-width: 100%; }
.cache-info-hotkey { display: inline-block; vertical-align: middle; }
.cache-info-hotkey span { display: inline-block; border: 1px solid #bbb; background-color: #fff; border-radius: 8px;
						  padding: 5px 8px 6px 8px; margin-left: 5px; margin-right: 5px; color: black; font-size: 16px; line-height: 1;
						  position: relative; top: -3px; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* settings */
.button-grid { display: flex; flex-direction: row; flex-wrap: wrap; align-content: start; }
.grid-button { width: 150px; height: 150px; background-color: #f2f2f2; border: 1px solid #ccc; display: block;
			   margin: 15px; color: black; text-align: center; font-size: 16px; position: relative; cursor: pointer;
			   flex: none; }
.grid-button:hover { text-decoration: none; }
.grid-button span { display: block; width: 100%; }
.grid-button span:last-child { position: absolute; bottom: 0; padding: 20px;}
.grid-button span.fa { font-size: 40px; padding-top: 18px;}
.grid-button .settings-icon { width: 100%; transform: scale(2.3); padding-top: 15px; }
.grid-button .settings-icon polygon, .settings-icon rect, .settings-icon rect { fill: black; }

.payment-conditions { position: relative; }
.payment-conditions .delete-button { position: absolute; right: 7px; top: 4px; }
.damage-condition-editor .ui-select-container { max-width: 210px; }
.damage-condition-editor .ui-select-choices { width: 200%; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* stationery editor */
.stationery-alternative-grid { min-height: 100px; max-height: 200px; max-width: calc(100% - 40px); }
.stationery-editor-container { display: flex; flex-direction: row; }
.stationery-editor-layer { flex: 1 1 0; display: flex; flex-direction: column; align-items: center; }
.stationery-editor-layer span { font-size: 12px; margin-bottom: 5px; }
.stationery-editor-layer img { display: block; height: 400px; border: 1px solid #aeaeae; background-color: white; }
img.stationery-layer1-error, img.stationery-layer2-error { display: none; }
.stationery-editor-layer button { margin: 10px 0 20px 0; }

.stationery-alternative-editor-container { display: flex; flex-direction: row; }
.stationery-alternative-editor-layer { flex: 1 1 0; display: flex; flex-direction: column; align-items: center; }
.stationery-alternative-editor-layer span { font-size: 12px; margin-bottom: 5px; }
.stationery-alternative-editor-layer img { display: block; height: 400px; border: 1px solid #aeaeae; background-color: white; }
img.stationery-alternative-layer1-error, img.stationery-alternative-layer2-error { display: none; }
.stationery-alternative-editor-layer button { margin: 10px 0 20px 0; }

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* small screen optimizations */

.small-screen-width { display:none; }
.normal-screen-width { display: inline; }

@media only screen and (max-width: 1670px)
{
	.small-screen-width { display: inline; }
	.normal-screen-width { display: none; }
}

@media only screen and (max-device-height: 900px)
{
	hr { margin-top: 10px; margin-bottom: 10px; }
}

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* responsive bootstrap override */
@media (min-width: 1153px) {
	.col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
		float: left; }
	.col-sm-12 { width: 100%; }
	.col-sm-11 { width: 91.66666667%; }
	.col-sm-10 { width: 83.33333333%; }
	.col-sm-9 { width: 75%; }
	.col-sm-8 { width: 66.66666667%; }
	.col-sm-7 { width: 58.33333333%; }
	.col-sm-6 { width: 50%; }
	.col-sm-5 { width: 41.66666667%; }
	.col-sm-4 { width: 33.33333333%; }
	.col-sm-3 { width: 25%; }
	.col-sm-2 { width: 16.66666667%; }
	.col-sm-1 { width: 8.33333333%; }
}

@media (max-width: 1152px) {
  	.col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
  		float: none; width: auto; }
  	.col-sm-9 > .col-sm-6 { padding-left: 0; padding-right: 0; }
  	.case-file-container
  	{
		.col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
			float: left; }
		.col-sm-12 { width: 100%; }
		.col-sm-11 { width: 91.66666667%; }
		.col-sm-10 { width: 83.33333333%; }
		.col-sm-9 { width: 75%; }
		.col-sm-8 { width: 66.66666667%; }
		.col-sm-7 { width: 58.33333333%; }
		.col-sm-6 { width: 50%; }
		.col-sm-5 { width: 41.66666667%; }
		.col-sm-4 { width: 33.33333333%; }
		.col-sm-3 { width: 25%; }
		.col-sm-2 { width: 16.66666667%; }
		.col-sm-1 { width: 8.33333333%; }
/*		.form-horizontal .control-label { text-align: left; }*/
	}
}

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* responsive */

/* WQHD little smaller */
@media only screen and (max-width: 2440px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_0 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_0 > .tabbar-inner-dialog-items { display: none; }
}

/* WQHD smaller */
@media only screen and (max-width: 2280px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_1 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_1 > .tabbar-inner-dialog-items { display: none; }
}

/* over-FullHD */
@media only screen and (max-width: 2048px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_2 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_2 > .tabbar-inner-dialog-items { display: none; }
}

/* FullHD */
@media only screen and (max-width: 1980px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_3 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_3 > .tabbar-inner-dialog-items { display: none; }
}

/* FullHD */
@media only screen and (max-width: 1920px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_4 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_4 > .tabbar-inner-dialog-items { display: none; }
}

@media only screen and (max-width: 1800px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_4a > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_4a > .tabbar-inner-dialog-items { display: none; }
	/* main menu */
	.hide-small { display: none; }
}

@media only screen and (max-width: 1700px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_4b > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_4b > .tabbar-inner-dialog-items { display: none; }
	/* main menu */
	.header-info { padding-right: 25px; }
	.header-organization { margin-right: 25px; margin-left: 50px; }
}

/* HD */
@media only screen and (max-width: 1600px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_5 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_5 > .tabbar-inner-dialog-items { display: none; }
}

@media only screen and (max-width: 1500px)
{
	/* main menu */
	.header-info-container.desktop { display: none; }
	.header-info-menu.mobile { display: block; }
}

/* laptop */
@media only screen and (max-width: 1440px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_6 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_6 > .tabbar-inner-dialog-items { display: none; }
	/* document template selector */
	.edoc-template-selector .modal-dialog { width: 90vw;}
}

/* smaller laptop */
@media only screen and (max-width: 1280px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_7 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_7 > .tabbar-inner-dialog-items { display: none; }
	/* main menu */
	.header-btn-text { padding-left: 20px; }
	/* icons */
	.case-file-category { font-size: 18px; position: relative; top: -5px; }
	.case-file-flag-icon { max-width: 26px; }
	.case-file-flag-icon svg { max-width: 30px; }
	/* bank entry editor */
	.bank-document-btn { display: none; }
}

/* smaller laptop */
@media only screen and (max-width: 1152px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_8 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_8 > .tabbar-inner-dialog-items { display: none; }
	/* top-/region-organization/concern area */
	.user-team-area.flex-row { display: block; }
	.user-team-area .flex-col { width: 100%; padding-right: 0; margin-bottom: 30px; }
	.user-team-area .flex-col:last-child { width: 100%; }
	/* icons */
	.case-file-category { font-size: 16px; top: -6px; }
	.case-file-flag-icon { max-width: 20px; }
	.case-file-flag-icon svg { max-width: 26px; }
	/* document template selector */
	.edoc-template-selector .modal-dialog { width: 95vw;}
}

/* iPad */
@media only screen and (max-width: 1024px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_9 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_9 > .tabbar-inner-dialog-items { display: none; }
	/* main menu */
	.header-tool-buttons { display: none; }
	.header-main-container.desktop { display: none; }
	.header-main-menu.mobile { display: block; }
	/* reminder editor */
	.reminder-editor { top: 120px; right: 25px; max-width: calc(100vw - 50px - 30px); }
	/* document template selector */
	.edoc-template-selector .modal-dialog { width: calc(100vw - 10px); }
	.edoc-template-item { width: 205px; height: 225px; padding-bottom: 15px; }
	.edoc-template-item span { font-size: 12px; }
}

/* smaller iPad */
@media only screen and (max-width: 900px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_10 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_10 > .tabbar-inner-dialog-items { display: none; }
	/* breadcrumb */
	.breadcrumb { margin-top: 14px; }
	.breadcrumb * { font-size: 18px; }
	.breadcrumb-container li svg { width: 30px; height: 30px; margin-left: -10px; }
	.breadcrumb > li + li::before { top: 3px; padding-left: 4px; padding-right: 4px; }
	/* document template selector */
	.edoc-template-item { margin: 0 3px 0 3px; width: 180px; height: 200px; padding-bottom: 10px; }
	.edoc-template-item span { font-size: 10px; }
}

/* smaller iPad */
@media only screen and (max-width: 800px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_11 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_11 > .tabbar-inner-dialog-items { display: none; }
}

/* smaller iPad */
@media only screen and (max-width: 768px)
{
	/* tabbar */
	.tabbar-inner { min-width: 60px; }
	.tabbar-inner-group-collapse_12 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_12 > .tabbar-inner-dialog-items { display: none; }
	/* breadcrumb and icons */
	.breadcrumb { margin-left: 62px; margin-top: 16px; max-width: calc(100vw - 160px); }
	.breadcrumb * { font-size: 16px; }
	.breadcrumb > li + li::before { top: 2px; padding-left: 2px; padding-right: 2px;  }
	.breadcrumb-case-file { height: calc(58px + 30px); }
	.tabbar-case-file .tabbar-triangle { width: 38px; height: calc(38px + 30px); border-top-width: calc(38px + 30px); border-right-width: 38px }
	.case-file-flags { position: absolute; left: calc(62px + 20px); bottom: 0; }
	.bank_entry_editor .case-file-flags { float: none; position: relative; left: unset; bottom: unset; text-align: right; }
	/* context buttons */
	.left-side { width: 62px; }
	.main-menu-btn { width: 50px; height: 50px; }
	.main-menu-btn .icon { font-size: 22px; width: 30px; height: 30px; }
	.main-menu-btn .fa { font-size: 24px; top: 5px; height: 35px; }
	.main-menu-btn-label { font-size: 8px; top: 0; }
	.main-menu-btn-2line .main-menu-btn-label { top: -8px; }
	.main-menu-btn .fa-briefcase { top: 10px; }
	/* main menu */
	.logo img { max-width: 140px; }
	/* document list */
	.doc-draft { top: -50px; }
	.doc-draft span { font-size: 100px }
	/* reminder editor */
	.reminder-editor { top: 80px; right: 10px; max-width: calc(100vw - 20px - 30px); }
}

@media only screen and (max-width: 700px)
{
	/* flex layout */
	.flex-row { display: block; }
	/* main menu */
	.header-organization.desktop { display: none; }
	.header-organization.mobile { display: block; }
	/* main menu */
	.header-info { padding-right: 15px; }
	.header-organization { margin-right: 15px; margin-left: 25px; }
}

@media only screen and (max-width: 650px)
{
	#user_search .desktop { display: none; }
	#user_search .mobile { display: inline-block; }
	/* main menu */
	.header-second-screen-btn { width: 48px; padding: 5px 0 1px 0; }
	.header-user-menu .header-btn { padding-left: 0; padding-right: 0; }
	.header-main-menu { padding-left: 10px; }
	.logo img { max-width: 120px; }
}

/* big iPhone */
@media only screen and (max-width: 600px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_13 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_13 > .tabbar-inner-dialog-items { display: none; }
	/* main menu */
  	.header-organization { margin-right: 0px; margin-left: 10px; }
	.header-main-dialog-button .desktop { display: none; }
	.logo img { max-width: 100px; }
	/* document list */
	.doc-draft { top: -40px; }
	.doc-draft span { font-size: 80px }
	/* reminder editor */
	.reminder-editor { top: 40px; right: 0; max-width: calc(100vw - 30px); }
}

/* iPhone */
@media only screen and (max-width: 480px)
{
	/* tabbar */
	.tabbar-inner { min-width: 70px; }
	.tabbar-inner-group-collapse_14 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_14 > .tabbar-inner-dialog-items { display: none; }
	/* breadcrumb */
	.breadcrumb { margin-left: 52px; }
	.case-file-flags { left: calc(52px + 20px); }
	/* context buttons */
	.left-side { width: 52px; }
	.main-menu-btn { width: 40px; height: 40px; }
	.main-menu-btn .icon { font-size: 22px; width: 20px; height: 20px; }
	.main-menu-btn .fa { font-size: 20px; top: 5px; height: 25px; }
	.main-menu-btn-label { font-size: 6px; top: 0; line-height: 1.2; }
	.main-menu-btn-2line .main-menu-btn-label { top: -5px; }
	.main-menu-btn .fa-briefcase { top: 8px; }
	/* document list */
	.doc-draft { top: -30px; }
	.doc-draft span { font-size: 60px }
}

/* iPhone */
@media only screen and (max-width: 384px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_15 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_15 > .tabbar-inner-dialog-items { display: none; }
}

/* iPhone */
@media only screen and (max-width: 320px)
{
	/* tabbar */
	.tabbar-inner-group-collapse_16 > .tabbar-inner-dialog-button { display: block; }
	.tabbar-inner-group-collapse_16 > .tabbar-inner-dialog-items { display: none; }
}

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* case file responsive */
@container case_file_container (max-width: 1540px)
{
	/* invoice toolbar */
	.invoice-service-date > .tabbar-inner-dialog-button { display: block; }
	.invoice-service-date > .tabbar-inner-dialog-items { display: none; }
}

@container case_file_container (max-width: 1280px)
{
	/* invoice toolbar */
	.invoice-date-due > .tabbar-inner-dialog-button { display: block; }
	.invoice-date-due > .tabbar-inner-dialog-items { display: none; }
}

@container case_file_container (max-width: 1200px)
{
	.case-file-container .control-label .desktop { display: none; }
	.case-file-container .control-label .mobile { display: inline-block; }
}

@container case_file_container (max-width: 1100px)
{
	/* invoice toolbar */
 	.invoice-to-vat > .tabbar-inner-dialog-button { display: block; }
 	.invoice-to-vat > .tabbar-inner-dialog-items { display: none; }
}

@container case_file_container (max-width: 1000px)
{
	.case-file-container .col-sm-3 { float: none; display: block; text-align: left; margin-left: 15px; clear: both; }
	.case-file-container .col-sm-9 { float: none; display: block; text-align: left; margin-bottom: 10px; }
	.info-badge.flex-grid-col-6 { width: 100%; flex: none; }
	.info-badge .col-sm-9 { width: 100%; }
}

@container case_file_container (max-width: 920px)
{
	/* invoice toolbar */
	.invoice-name-vat > .tabbar-inner-dialog-button { display: block; }
 	.invoice-name-vat > .tabbar-inner-dialog-items { display: none; }
}

@container case_file_container (max-width: 740px)
{
	.case-file-container .col-sm-4 { float: none; width: 100%; display: block; }
	.case-file-container .col-sm-4 .col-sm-7 { width: 30%; }
	.case-file-container .col-sm-4 .col-sm-5 { width: 70%; }
	/* document toolbar */
	.doc-search-incoming-outgoing > .tabbar-inner-dialog-button { display: block; }
	.doc-search-incoming-outgoing > .tabbar-inner-dialog-items { display: none; }
	/* case file header */
	.content-header .header-info { display: none; }
	.content-header .active-users { display: none; }
	.content-header .team-active-users { display: block; }
}

@container case_file_container (max-width: 720px)
{
	/* invoice toolbar */
	.invoice-all-properties > .tabbar-inner-dialog-button { display: block; }
	.invoice-all-properties > .tabbar-inner-dialog-items { display: none; }
}

@container case_file_container (max-width: 600px)
{
	.case-file-container .col-sm-4 .col-sm-7 { width: 50%; }
	.case-file-container .col-sm-4 .col-sm-5 { width: 50%; }
	.flex-grid-col-1, .flex-grid-col-2, .flex-grid-col-3, .flex-grid-col-4, .flex-grid-col-5, .flex-grid-col-6, .flex-grid-col-7, .flex-grid-col-8,
	.flex-grid-col-9, .flex-grid-col-10, .flex-grid-col-11, .flex-grid-col-12
		{ padding-left: 15px; padding-right: 15px; flex: none; width: 100%; }
	/* document toolbar */
	.doc-search-term > .tabbar-inner-dialog-button { display: block; }
	.doc-search-term > .tabbar-inner-dialog-items { display: none; }
}

@container case_file_container (max-width: 500px)
{
	.case-file-container .col-sm-4 .col-sm-7 { width: 60%; }
	.case-file-container .col-sm-4 .col-sm-5 { width: 40%; }
}

/* invoice list responsive */
@container invoice_list_container (max-width: 500px)
{
	.invoice-search-type-term > .tabbar-inner-dialog-button { display: block; }
	.invoice-search-type-term > .tabbar-inner-dialog-items { display: none; }
}

/* pdf viewer responsive */
@container doc_pdf_container (max-width: 840px)
{
	.doc-pdf-name-cat > .tabbar-inner-dialog-button { display: block; }
	.doc-pdf-name-cat > .tabbar-inner-dialog-items { display: none; }
	.doc_properties_edit .doc-viewer-zoom { margin-left: 15px; }
}

@container doc_pdf_container (max-width: 600px)
{
	.doc_properties_edit .doc-viewer-zoom { margin-left: 0; }
}

@container doc_pdf_container (max-width: 550px)
{
	.doc-pdf-visibility-zoom > .tabbar-inner-dialog-button { display: block; }
	.doc-pdf-visibility-zoom > .tabbar-inner-dialog-items { display: none; }
}

@container doc_pdf_container (max-width: 450px)
{
	.doc-pdf-all-properties > .tabbar-inner-dialog-button { display: block; }
	.doc-pdf-all-properties > .tabbar-inner-dialog-items { display: none; }
	.doc-pdf-toolbar-buttons { border-left-width: 0; padding-left: 0px; margin-left: 5px; }
}

/* document editor responsive */
@container edoc_area (max-width: 900px)
{
	.doc-pdf-name-cat > .tabbar-inner-dialog-button { display: block; }
	.doc-pdf-name-cat > .tabbar-inner-dialog-items { display: none; }
	.doc_properties_edit .doc-viewer-zoom { margin-left: 15px; }
}

@container edoc_area (max-width: 700px)
{
	.doc_properties_edit .doc-viewer-zoom { margin-left: 0; }
}

@container edoc_area (max-width: 650px)
{
	.doc-pdf-visibility-zoom > .tabbar-inner-dialog-button { display: block; }
	.doc-pdf-visibility-zoom > .tabbar-inner-dialog-items { display: none; }
}

@container edoc_area (max-width: 450px)
{
	.doc-pdf-all-properties > .tabbar-inner-dialog-button { display: block; }
	.doc-pdf-all-properties > .tabbar-inner-dialog-items { display: none; }
	.doc-pdf-toolbar-buttons { border-left-width: 0; padding-left: 0px; margin-left: 5px; }
}

/* case file editor responsive */
@container casefileeditor_area (max-width: 1200px)
{
	.tab_field_container { display: block; }
	.tab_field_label { text-align: left; }
	.tab_special_container .flex-row:has(.account-col-grid) { display: block; }
	.account-grid-container { overflow-x: auto; width: 100%; }
	.account-grid { min-width: 400px; }
}

@container casefileeditor_area (max-width: 750px)
{
	.casefileeditor_tabcontent .tab_col_container { padding-left: 0; padding-right: 0; }
	.casefileeditor_tabheader { padding-left: 0; padding-right: 0; }
	.casefileeditor_tabheader { overflow-x: auto; }
}

@container casefileeditor_area (max-width: 650px)
{
	.casefileeditor_tabcontent .tab_col_container { display: block; }
	.casefileeditor_tabheader { padding-left: 0; padding-right: 0; }
}

/* document import dialog responsive */
@container import_dialog (max-width: 1840px)
{
	.import-casefile-search > .tabbar-inner-dialog-button { display: block; }
	.import-casefile-search > .tabbar-inner-dialog-items { display: none; }
}

@container import_dialog (max-width: 1030px)
{
	.import-name-cat > .tabbar-inner-dialog-button { display: block; }
	.import-name-cat > .tabbar-inner-dialog-items { display: none; }
}

@container import_dialog (max-width: 840px)
{
	.import-all-properties > .tabbar-inner-dialog-button { display: block; }
	.import-all-properties > .tabbar-inner-dialog-items { display: none; }
}
