
/* common */

html, body { height: 100%; min-height: 100%; margin: 0;  padding: 0; overflow: hidden; }
html { font-size: 13px; font-family: "Verdana", Verdana, sans-serif; }
body { font-size: 100%; background-color:#fff; }
body.wait_cursor *, body.wait_cursor { cursor: wait !important; }
body {                          /* disable unwanted text selection */
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
}
table tbody {
    -webkit-user-select: initial;
    -khtml-user-select: initial;
    -moz-user-select: initial;
    -o-user-select: initial;
    user-select: initial;
}
.user_select {
    -webkit-user-select: text;
    -khtml-user-select: text;
    -moz-user-select: text;
    -o-user-select: text;
    user-select: text;
}

:focus { outline: #00aeb8 auto 1px; }


/* ---- inputs ------------------------------------------------------------*/

input[type=checkbox] { /*margin: 0 5px;*/ height: 16px; width: 16px; min-width: 16px; cursor: pointer; }
input[type=checkbox]+label { margin: 0 5px; line-height: 26px; vertical-align: top; }
input[type=checkbox]+label span { vertical-align: inherit; }
input[type=radio], input[type=radio]+label { vertical-align: baseline; }
input[type=radio]+label { margin: 0 15px 0px 5px; }
input[type=checkbox]:disabled:not(.readonly)+label, input[type=radio]:disabled:not(.readonly)+label { color: #ccc; }

.checkbox_master { font-size: 100%; color: #777; cursor: pointer; }

/*input[type=text].hasDatepicker { text-align: center; }*/
input[type=text] { text-overflow: ellipsis; overflow: hidden; white-space: nowrap; }
input[type=text].ui-timepicker-input { width:7em; text-align:center; font-size:100%; }
input[type=text].hasDatepicker:disabled:not(.readonly), input[type=text].ui-timepicker-input:disabled:not(.readonly) { color: #f5f5f5; }

input[type=submit] { padding: 6px; background: #e6e6e6; border: 0.9px solid #aaaaaa;
    cursor: pointer; -webkit-border-radius: 4px;  border-radius: 4px;  font-size: 100%; }

input:-webkit-autofill { -webkit-box-shadow: 0 0 0px 1000px white inset; -webkit-text-fill-color: #444 !important; }

select>option:disabled { color: #999; }
.option_group {}
.option_child { padding-left:25px; }

/* ---- button ----*/
button { padding: 6px; background: #f5f5f5; border:1px solid #ccc;
    cursor: pointer; -webkit-border-radius: 4px;  border-radius: 4px;  font-size: 100% }
button:disabled { cursor: default !important; color: #ccc !important; }

/* ---- form layout ----*/
.form_row { display: flex; width: 100%; margin: 0 0 1em 0; z-index: 0; flex-wrap: nowrap; }
.form_separator, .separator { display: flex; border-top: 1px solid #aaa; width: 100%; margin: 0 0 1em 0; }
.form_column { display: inline-block; width: auto; vertical-align: top; flex: 0 0 auto; }
.form_label_column { display: inline-block; width: auto; text-align: right; vertical-align: top; }
.form_input_column { display: inline-block; margin: 0 6em 0 1em; width: auto; flex: 0 0 auto; vertical-align: top; }
.form_cell { display: flex; box-sizing: border-box; }
.form_cell_inline { display: inline-flex; }

.form_label, .form_label_left, .form_text { text-align: right; height: 26px; line-height: 26px; margin: 0 0 2px 0; padding: 0;
    color:#a9a9a9; background: none; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; pointer-events: none; }
.form_label_left { text-align: left; }
.form_label.has_error, .form_label_left.has_error { color: #ee2956; }
.form_text { box-sizing: border-box; height: 26px; line-height: 26px; padding: 0; margin: 0 0 2px 2em; color: #444;
    text-align: left; user-select: initial; }
.form_header { display: flex; font-size: 110%; font-weight: bold; padding: 0; height: 26px; line-height: 24px; margin: 0 0 2px 0; box-sizing: border-box; }
.form_header, .form_header * { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 300px; }
.form_spacer { text-align: left; margin: 1px 0 10px 0; color: #a9a9a9; background: none; white-space: nowrap;}
.form_box, .form_checkbox, .form_radiobox, .form_button { height: 26px; line-height: 26px; margin: 0 0 2px 0; padding: 0 4px;
    border: 1px solid #ccc; -webkit-border-radius: 4px; border-radius: 4px; box-sizing: border-box;
    color: #444; background-color: #f5f5f5;}
.form_checkbox { margin: 0 0 2px 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.form_radiobox { line-height: 20px; height: auto; padding: 4px 4px 6px 4px; }
.form_checkbox.readonly, .form_checkbox.readonly *, .form_radiobox.readonly, .form_rediobox.readonly *  {
    background: transparent; color: #444; }
.form_checkbox>input[type=checkbox] { margin: 4px 0 0 8px; }
.form_select { height: 20px; }
.form_button { padding: 0; cursor: pointer; text-align: center; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; }
.form_button:hover:not(.disabled):not(.important), .form_button:hover:not(.disabled):not(.important) * { color: #00aeb8 }
.form_button_on:not(.disabled), .form_button_on:not(.disabled) * { color: #fff !important; background-color: #00aeb8 !important; }
.form_button_on:hover:not(.disabled), .form_button_on:hover:not(.disabled) *  { color: #70f7ff !important }
.form_button.readonly { background: transparent; color: #ccc; outline: none; }
.form_button.disabled { outline: none; color: #ccc; }
.form_button.disabled .icon_button:hover { color: #eee !important; cursor: default; }
.form_button span:not(:first-child) { margin: 0 0 0 10px; }
.form_box.hover:hover { color: #00aeb8; }
.form_box.has_error, .form_input_box.has_error { border: 1px solid #ee2956; }
.form_input_box { display: block;height: 26px; width: 100%; padding: 0 6px; margin: 0 0 2px 0;
    border: 1px solid #ccc; border-radius: 4px; box-sizing: border-box;
    color: #444; background-color: #f5f5f5; }
.form_input_box:focus { padding: 0 4px; background-color: #fff; outline:none; border: 2px solid #00aeb8; }
.form_input_box:disabled { color: #f5f5f5; background-color: #ccc; }
.form_input_box:disabled.readonly, .form_input_box.readonly { color: inherit; background: transparent; border-color: #ccc; }

.form_box.disabled { background: #ccc; }
.form_box.disabled, .form_box.readonly { background: #fff; color: inherit; }
.form_box textarea { line-height: 1.5em; border: none; background: none; color: #444; }

.form_label, .form_label_left, .form_header { -webkit-user-select: text; -khtml-user-select: text; -moz-user-select: text;
    -o-user-select: text; user-select: text; }

/* ---- list_box -----------------------------------------------------------*/
.list_box { height: auto; min-height: 28px; padding: 0; }
.list_box.readonly { background: #fff; color: #777; }
.list_box .list_box_item { display: flex; }
.list_box .list_box_label { padding: 0 7px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.list_box .list_box_button_wrapper { width: 25px; margin: 0 7px 0 auto; text-align: right; }
.list_box .list_box_button { cursor: pointer; }
.list_box .list_box_item:hover:not(.disabled) .list_box_label { color: #00aeb8; }
.list_box .list_box_item:hover:not(.disabled) .list_box_button { color: #00aeb8; }


/* ---- jquery-ui overrides ------------------------------------*/
.ui-widget { font-size: 100%; !important; }
.ui-widget .ui-widget { font-size: 100%; !important; }
.ui-widget-header { background: #dedede; }
.ui-widget-content { color: #666; }
.ui-widget-content a { color: inherit; text-decoration: none; }
.ui-tabs { border: none; }
.ui-tabs .ui-tabs-nav { background: none; border: none; border-bottom: 1px solid #a5a5a5;
    border-bottom-right-radius: 0; border-bottom-left-radius: 0; padding: 0; /*min-height: 32px;*/ font-size: 110%; }
.ui-tabs .ui-tabs-panel { padding: 1em; }
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { background: #00aeb8; color: #fff;  }
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #fff; }
.ui-tabs-active *, .ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor { cursor: pointer; }
.ui-tabs-nav li.ui-state-active.unsaved .tab_icon { color: #ff0000; }
.ui-tabs-nav li:not(.ui-state-active).unsaved .tab_icon { color: #ee2956; }
.ui-tabs-nav li.ui-state-default.unsaved:hover { background: #04d6e2; }

.ui-dialog { -webkit-box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.5);
    box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.5);
    min-width: 350px;
    -webkit-user-select: text;
    -khtml-user-select: text;
    -moz-user-select: text;
    -o-user-select: text;
    user-select: text;
}
.ui-dialog { z-index: 100 !important; overflow: visible; }
.ui-dialog .ui-dialog-content { overflow: visible; color: #444; }
.ui-dialog-titlebar { color: #ffffff; background: #00aeb8 }
/*.ui-dialog-content { color: #444; }*/

#ui-datepicker-div { z-index: 101 !important }
.ui-datepicker td.ui-datepicker-days-cell-over * { background: yellow; color: #444; }

.ui-autocomplete { max-height: 250px; max-width: 300px; overflow-y: auto; overflow-x: hidden; margin-top: 10px; z-index: 1000; font-size: 12px; line-height:1.2em;
    box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3); white-space: nowrap; text-overflow: ellipsis; }
.ui-autocomplete .ui-menu-item.ui-state-focus { background: #00aeb8; color: #fff; }
.ui-autocomplete .ui-menu-item.ui-state-focus * { color: #fff !important; }

.ajax_indicator_small { background: url('images/ajax_loader_small.gif') right center no-repeat; width:16px; height:16px; padding: 2px 8px;}
.ajax_indicator_medium { background: url('images/ajax_loader_medium.gif') right center no-repeat; width:32px; height:32px; }
.accordion_ajax_indicator {  background: url('images/ajax_loader_small.gif') right center no-repeat;
    width:16px; height:16px; margin:0px 10px 0px 0 !important; }


/* ---- backgrid overrides and extensions ----------------------------------------*/

.backgrid .string-cell, .backgrid .email-cell { text-align: center; }
.backgrid th, .backgrid td { padding: 2px 5px; text-align: left; max-width: inherit; }
.backgrid thead th { height: 32px; border: 1px solid #fff; border-bottom: 1px solid #00aeb8;  border-top: 1px solid #00aeb8;
    text-align: center; vertical-align: middle; background: #00aeb8; font-weight: normal; }
.backgrid thead th:first-child { border-left: 1px solid #00aeb8; border-top-left-radius: 4px; }
.backgrid thead th:last-child { border-right: 1px solid #00aeb8; border-top-right-radius: 4px; }

.backgrid th a { font-weight: normal; color: #f5f5f5; }
.backgrid td { border: 1px solid #ccc; }
.backgrid th div:first-child, .backgrid td div:first-child { overflow: hidden; text-overflow: ellipsis; }
.backgrid .number-cell.editor { max-width: 90%; }
.backgrid td>input[type=text] { border: none; }
.backgrid td.has_error { border: 1px double #ff0000 !important; }
.backgrid td.placeholder span.placeholder { color: #a5a5a5; }

.backgrid td.row_editor { background-color:#fff; border: none; overflow:hidden; padding: 0; text-align: left; box-sizing: content-box; }

.backgrid th:not(sortable) { cursor: default; }
.backgrid .sort-caret { margin-left: 0.75em; border-top: none; border-bottom: none; border-right: 6px solid transparent; }
.backgrid .ascending .sort-caret { border-bottom: 6px solid #f5f5f5; border-left: 6px solid transparent; }
.backgrid .descending .sort-caret { border-top: 6px solid #f5f5f5; border-bottom: none;}


/* backgrid paginator */
.backgrid-paginator ul { margin: 0 0 10px 0; float: right; font-size: 90%; padding: 0; }

.backgrid-paginator ul > li > a { width: 25px; height: 25px; line-height: 25px; margin: 0 3px; color: #777; border-radius: 4px; }
.backgrid-paginator ul > li.active > a, .backgrid-paginator ul > .active > a:hover { background-color: #00aeb8; color: #fff }
.backgrid-paginator ul > li:not(.active):not(.disabled) > a:hover { background-color: #70d8dd; color: #777;  }

.backgrid-paginator ul > li > a[title="First"],
.backgrid-paginator ul > li > a[title="Last"] { transform: scale(2.0, 1.0); margin: 0 5px; width: 10px; padding: 0 3px; }
.backgrid-paginator ul > li > a[title="Previous"],
.backgrid-paginator ul > li > a[title="Next"] { transform: scale(2.0, 1.0); margin: 0 15px; width: 10px; padding: 0 3px; }

.backgrid-paginator ul > li.disabled > a, .backgrid-paginator ul > li.disabled > a:hover { color: #ddd; cursor: default; background: transparent; }


/* ---- .editor_wrapper ------------------------------------------------------------------------*/
.editor_wrapper { background-color: #fff; overflow: hidden; max-width: calc( 100% - 1px );
    border: 2px solid #777; border-radius: 5px; }
.editor_wrapper .activity_sticker { display: inline-block; height: 26px; line-height: 26px; margin: 0 0 2px 0; white-space: nowrap;
    border: 1px solid #ccc; font-weight: bold; font-size: 110%; min-width: 200px; }


/* ---- fixed_grid ------------------------------------------------------------------------*/
.fixed_grid_header { overflow-y: auto; }
.fixed_grid_content { height: 100%; overflow-y: auto; }
.fixed_grid_content .backgrid, .fixed_grid_header .backgrid { table-layout: fixed; }
.fixed_grid_wrapper { width: auto; overflow: hidden; border-top: 1px solid #f5f5f5; position: relative; }

/* ---- inline_table -----------------------------------------------------------------------*/
.inline_table { font-size: 12px; width: 100%; padding: 2px 6px; line-height: 17px; height: 17px;
    color: #777; background: #fff; cursor: default; border: 1px solid #ddd; }
.inline_table thead th  { font-weight: normal; background-color: #eee; color: #777;
    border-left: 1px solid #fff; border-right: 1px solid #fff; border-bottom: 1px solid #eee; border-top: 1px solid #eee;
    height: 27px; line-height: 23px; cursor: default }

.inline_table thead th:first-child { border-left: 1px solid #eee; }
.inline_table thead th:last-child { border-right: 1px solid #eee; }

.inline_table th a { color: #666; font-weight:normal; font-size: 12px; }
.inline_table td { text-align: left; height: 23px; line-height: 23px; }
.inline_table tr.selected td, .inline_table tr.selected th, .inline_table th.selected,
.inline_table tr.selected a, .inline_table tr.selected [data-route] { background-color: #00aeb8; color: #f9f9f9; }
.inline_table tr.selected .icon_button:hover { color: #70f7ff; }
.inline_table tr.selected [data-route]:hover { color: #70f7ff; }
.inline_table tr.selected .icon_button:hover:not(.disabled):not(.important) { color: #70f7ff; background: #00aeb8; }
.inline_table .ascending .sort-caret { border-bottom: 6px solid #777; border-left: 6px solid transparent; }
.inline_table .descending .sort-caret { border-top: 6px solid #777; border-bottom: none;}
.inline_table tr.active { cursor: default; }

.inline_table .activityType { width: 8%; }
.inline_table .activity_sticker_wrapper { width: 135px; box-sizing: border-box; }
.inline_table .dienstgebietName { width: 15%; }
.inline_table .partner { width: 16%; }
.inline_table .customerName { width: 15%; }
.inline_table .customerNameWithId { width: 19%; }
.inline_table .candidateName { width: 15%; }
.inline_table .candidateNameWithId { width: 19%; }
.inline_table .typeLabel, .inline_table .type { width: 8em; }
.inline_table .numberOrType { width: 8%; }
.inline_table .spanInfo { width: 17%; }
.inline_table .durationInfo { width: 5%; }
.inline_table .distanceInfo { width: 7%; }
.inline_table .id { width: 6em; }
.inline_table .missionId { width: 5%; }
.inline_table .sumTotal { width: 7%; text-align: right; }


/* ---- trumboxyg text editor -----------------------------------------------------*/
.trumbowyg-box, .trumbowyg-editor { border-radius:4px; margin: 20px; }
.trumbowyg-button-pane { width: 100%; background: #f5f5f5; border-radius:4px }
.trumbowyg-button-pane li button { text-indent: 0; background: none; font-family:'icomoon' }
.trumbowyg-button-pane:not(.trumbowyg-disable) li button:hover { color:#444; background:rgba(0,174,184,0.3); }


/* ---- selectric overrides --------------------------------------------------------*/
.selectric-wrapper { background: none; width: auto; margin: 0px 2px 2px 0 }
.selectric-wrapper.selectric-disabled .selectric { color: #888; background: #ccc; opacity: 1; filter: none; cursor: default; }
.selectric-wrapper.selectric-disabled .label { color: #f5f5f5; }
.selectric-wrapper.selectric-disabled .button:after { border-top-color: #f5f5f5; }
.selectric-wrapper.selectric-readonly .selectric { background: none; cursor: default }
.selectric-wrapper.selectric-readonly .label { color: #777; }
.selectric-wrapper.selectric-readonly .button:after { display:none; }
.selectric-wrapper.selectric-disabled .icon_button { color: #ccc; cursor: default; }
.selectric-wrapper .icon_button:hover:not(.disabled) { color: #ccc; }
.selectric-items .selectric-scroll { position: fixed; height: auto; margin-top: 3px; border: 1px solid #aaa; border-radius: 5px;
    box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3); }
.selectric-items .disabled { cursor: default !important; color: #ccc !important; background: #fff !important;
    -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.selectric-items li.highlighted, .selectric-items li:hover { background: #e0e0e0; color: #444; }
.selectric-items li.selected { background: #3ba9da; color: #fff; }

.selectric-disabled { opacity: 1; }
.selectric { border: 1px solid #ccc; background: #f5f5f5; }
.selectric .button:after { border-top-color: #444; }
.selectric .label { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin: 0 23px 0 7px; line-height: 24px;
    color: #444444; height: inherit;}


/* ---- icons ---- */
[class^="icon-"] /*, [class*=" icon-"]*/ { color: inherit; padding: 0; }

.icon_small { font-size: 100% }
.icon_medium { font-size: 120% }
.icon_big { font-size: 140% }

.icon_disabled, .disabled:not(.readonly) { cursor:default; pointer-events: none; }
.icon_disabled:hover, .disabled:hover { cursor:default; }

.icon_button, [class^="icon_"] { cursor: pointer; background-size: contain;  background-repeat: no-repeat;
    color: inherit; vertical-align: text-bottom; display: inline-block; margin: 0; box-sizing: border-box; }
.icon_button.disabled { color: #ccc; }
.icon_button:hover:not(.disabled) { color: #00aeb8; background-color: inherit; cursor: pointer; }
.icon_button.save_button.unsaved { color: #ee2959; background: #ffed03; }
.icon_button.save_button.unsaved:hover { color: #ff9e4a; background: #ffed00; }
.tab_icon { float: left; margin: 6px 0 0 6px; padding: 4px 1px 4px 4px; border-radius:3px; }
.ui-state-active [class^="icon-"] { color: #f6f6f6; }
.selected [class^="icon-"], .selected [class*=" icon-"] { color: #fefefe; background: #00aeb8; }
.selected [class^="icon-"]:hover:not(.disabled):not(.important), [class*=" icon-"]:hover:not(.disabled):not(.important) {
    color: #00aeb8; background: transparent; }

/* ---- semantic rules -----*/
.light_text, .disabled_text { color: #b0b0b0 !important; }
.large_text { font-size: 150%; font-weight: bold; }
.medium_text { font-size: 110%; font-weight: bold; }
.normal_text { font-size: 100%; font-weight: normal; }
.bold_text { font-weight: bold; }
.italic_text { font-style: italic; }
.black_text { color: #000; }
.id_text { font-size: 70%; }
.numeric { text-align: right; }
.left_align { text-align: left !important; }
.center_align { text-align: center !important;  }
.right_align { text-align: right !important;  }
.left_align_element { margin-left: auto !important; }
.nowrap { white-space: nowrap; overflow: hidden }
.noclick { pointer-events: none; }
.state_error { color: #ee2956 !important; font-weight:bold !important; }
.state_valid { color: #009900 !important; font-weight:bold !important; }
.state_pending { color: #0000ff !important; font-weight:bold !important; }
.unsaved { color: #ee2956; background: #ffed00; }
.unsaved:hover { color: #ffed00; background: #ee3956; }
.hasSVG * { pointer-events: none; }
.inverted { filter: invert(100%); -webkit-filter: invert(100%); }
.active { cursor: pointer; color: #ffff00; background: #419636; }
.hidden, .hidden * { display: none; }
.wait_cursor, .wait_cursor * { cursor: wait !important; }
.drag_cursor { cursor: move; }
.underlined { text-decoration: underline; }
.line_through { text-decoration: line-through; }
.end_ellipsis { text-overflow: ellipsis; overflow: hidden; white-space: nowrap; }
.smooth_border_3 { border: 1px solid #aaa; border-radius: 3px }
.smooth_border_5 { border: 1px solid #aaa; border-radius: 5px }
.document_link:hover { color: #00aeb8; text-decoration: underline; cursor: pointer; }
.document_link a:focus { color: #00aeb8; text-decoration: underline; cursor: default; }
.service_type_mobile { color: #00b87b; }
.service_type_office { color: #b40098; }

.important { background: #00aeb8; color: #fefefe; }
:not(.disabled)>.important:hover, :not(.disabled).important:hover, :not(.disabled).important>*:hover { color: #70f7ff !important; }
.important.disabled, .important.disabled * { background: #ccc; color: #f5f5f5; }

.drop_shadow {
    box-shadow: 10px 10px 15px rgba(0, 0, 0, 0.4);
    -webkit-box-shadow: 10px 10px 15px rgba(0, 0, 0, 0.4);
    -moz-box-shadow: 10px 10px 15px rgba(0, 0, 0, 0.4);
}

/* ---- activity_label ---------------------------------------------------------------*/

.activity_sticker_wrapper { text-align: left;  }
.activity_sticker { border-radius: 4px; text-align: left; margin: 0; padding: 0 10px; box-sizing: border-box; }

.activity_sticker.has_link:not(.disabled) { cursor: pointer; }
.activity_sticker.has_link:hover:not(.disabled) { -webkit-filter: brightness(125%); filter: brightness(125%); }

.activity_sticker .id_text { font-weight: bold; vertical-align: middle; }
.activity_sticker .activity_name { float: none; margin: 0 auto 0 3px; width: 50px; }


* [data-route], * [data-id], a[href][target=_blank] { cursor: pointer; pointer-events: all; }
* [data-route]:hover:not(.disabled), * [data-id]:hover:not(.disabled), a[href][target=_blank]:hover { color: #00aeb8; }
table .icon_button[data-route]:hover, table .icon_button[data-id]:hover {
    color: #f5f5f5; background: #00aeb8; padding: 1px; border-radius: 3px; }
.popup_panel, .menu_panel { display: none; position: fixed; background: #fff; z-index: 10; }


/* ---- application views and areas ---- */

#main_view { height: 100%; width: 100%; overflow: hidden; }
#main_view>#header { position: absolute !important; display: flex; justify-content: flex-end; height: 80px; min-height: 80px; max-height: 80px; width: 100%;
    box-sizing: border-box; padding: 10px 0 0 0; background: #f0f0f0; }

/* ---- status_panel ----------------------------------------------------------*/
#main_view #status_panel { margin-right: auto; display: flex; }
#main_view #status_panel>#busy_indicator { margin: 0 auto 0 20px; vertical-align: top; z-index: 99; display: inline-flex; will-change: transform; }
#main_view #status_panel>#status_message { margin: 0 0 0 35px; color: #666; background: #f5f5f5; height: 24px;
    padding: 3px 5px; border: 1px solid #777; border-radius: 4px; box-sizing: border-box; display: none; z-index: 99;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5); }
#busy_overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 98; display: none;
    border: none; background: rgba( 0, 0, 0, .25 ); }

#main_view>#header>#header_right { margin: 0 20px 0 0; }
#main_view>#header #authorize { font-size: 90%; background: #f5f5f5; color: #777; padding: 2px 0;
    height: 14px; width: 156px; text-align: center; cursor: pointer; }

#main_view>#content { height: calc(100% - 80px); width: 100%; overflow: hidden; position: absolute; top: 80px; }
#app_tabs { position: fixed; width: 100%; padding: 0; }
#app_tabs>ul { background: #f0f0f0; border-radius: 0; padding: 0 2px; }
#app_tabs>ul>li .ui-icon-close { float: left; margin: 0.4em 0.2em 0 0; cursor:pointer; padding: 0 0 2px 2px; }
#app_tabs>ul>li .ui-icon-close:hover { color: #fff; background-color: #04e8f5; border-radius: 4px; }


/* ---- main menu ---------------------------------------------------------------------------------------------*/
.menubar { margin: 15px 40px 0 0; }
.menu { padding: 0; list-style: none; display: inline-block; text-align: left; margin: 0; }
.menu>li { float: left; width: 100px; position: relative; cursor: pointer; }

/* ---- submenu ----------------------------------------------------------------------------------------------- */
.submenu { width:auto; background: #f0f0f0; padding: 10px 0px 10px 0px; }
.menu ul li { padding: 2px 10px 2px 10px; color: #000; overflow: hidden; white-space: nowrap; }
.menu ul li:hover { color: #fff; background: #00aeb8; }
.menu ul li>span:nth-child(1) { padding-left: 5px }
.menu ul li>span:nth-child(2) { position: absolute; right: 0px; width: 6em; padding-right: 5px    }
.menu ul li.menu_separator { border-bottom: 1px solid #aaa; padding: 0; margin: 10px 0 10px 0; height: 0;}
.menu_disabled { color: #aaaaaa !important; cursor:default !important;}
.menu_disabled:hover { color: #dddddd !important; }


/* Tab panels always full height */
div[id^="view/"] { height: 100%; }

/* icons in header bar */
.header_icon { color: #666; font-size: 220%; width: 32px; height: 32px; }
.header_icon:hover { color: #00aeb8; }


/* ---- expandable_panel --------------------------------------------------*/
.expandable_header { margin: 5px 0 10px 0; }
.expandable_header.collapsed { margin: 5px 0 0 0; }
.expandable_label { margin: 0 0 0 0; width: auto; min-width: 10em; padding: 5px 28px 6px 18px;
    border-radius: 0 0 10px 0; border: 1px solid #aaa; border-top: none; color: #777; cursor: pointer; }
.expandable_label:hover { background: rgba(0,174,184,.25); }
.expandable_header:not(.collapsed) .expandable_label { background: #00aeb8; color: #fff; border-color: #00aeb8; }
.expandable_content { margin: 25px 10px 20px 10px; }
.expandable_content.collapsed { display: none; margin: 3px 0 0 0; }

/* ---- expandable textarea ----------------------------------------------*/
.expandable { height: auto; overflow: hidden; }
.expandable.readonly { background: #fff; }
textarea.readonly { color: #777; }


/* ---- accordion view --------------------------------------------------------------*/
.ui-accordion .ui-accordion-header { display: flex; white-space: nowrap; overflow: visible; text-overflow: ellipsis;
    margin: 2px 0 0 0; border: none; border-radius: 4px; box-sizing: border-box; height: 36px; }
.ui-accordion .ui-accordion-content { padding:2.5em 2.5em 0 2.5em; margin-top:-2px; border-top: 0; overflow:auto; /*width:100%;*/ }
.ui-accordion .ui-accordion-icons { padding-left: 1.5em; }
.ui-accordion-header-icon { display: none; }
.ui-accordion .ui-accordion-header * { user-select: text; }

.accordion_header_button, .accordion_header_icon { margin: 0px 10px 0 0; height: 24px; width: 24px; line-height: 24px;
    font-size: 1.2em; text-align: center; }
.accordion_header_button:not(.unsaved) { color: #777; background: transparent; }
.accordion_header_button:not(.unsaved):hover { color: #00aeb8; background: #f5f5f5; }
.ui-state-active .accordion_header_button:not(.unsaved) { background: #eee; }
.ui-state-active .accordion_header_button:not(.unsaved):hover { background: #f5f5f5; }

.accordion_header_icon { border-radius: 4px; color:#444;  }
.accordion_header_icon:hover { color: #fff; background: #00aeb8;  }
.ui-accordion-header-active .accordion_header_icon { color: #fff; }

.accordion_header_label_1 { width: 12em; padding: 4px 5px 0 5px; color: #666; vertical-align: sub; }
.accordion_header_label_1.has_error, .accordion_header_label_2.has_error { color: #ffa317 !important; }
.accordion_header_icon.has_error { background: red !important; }
.accordion_header_icon.unsaved { color: #ee2956; background: inherit; }

.ui-accordion-header-active .accordion_header_label_1 { color: #fff; font-weight: bold; }
.ui-accordion-header-active .accordion_header_label_2 { color: #f5f5f5; }
.ui-accordion-header .icon_button { margin-right: 20px; border-radius: 4px; }
.ui-accordion-header .icon_button.disabled { color: #ccc; }

/* ---- login dialog -----------------------------------------------------*/
#login_dialog { display:flex !important; margin:20px 20px 30px 20px; border: none; }
#login_dialog #message { min-width:40em; margin:60px 0 40px 0; }
#login_dialog input { display: inline-block; padding:2px 5px; }
#login_dialog label { display:inline-block; width: 100px; padding: 10px 0px 5px 0px; }


/* ---- search view ------------------------------------------------------------- */
#search.search_wrapper {}
#search_view { outline:none; height: 100%; }
#search_view .checkbox_master { float: right; }
#search_view #parameter_panel { margin: 10px 20px; width: inherit;}
#search_view #search_input_panel { margin: 0; }
#search_view #search_type { margin: 0 40px 0 0; }
#search_view #search_pattern { height: 30px; }
#search_view #search_common_submit { width: 100%; height: 56px; font-size: 200%; }
#search_view #search_common_parameters { margin: 0 20px 0 0; }
#search_view #search_parameter_panel { margin: 0 0 0 auto; }
#search_view #search_specific_parameters .form_checkbox { width: 160px; }
#search_view #search_specific_parameters #dienstgebiet_parameter_view .form_checkbox {
    width: 200px; font-size: 90%; margin:0 2px 2px 0; }
#search_view .search_parameter_header { height: 32px; line-height: 32px; }

#search_view div[id$="_result_panel"] { margin: 0 20px; overflow: hidden; background: none; border: none;  }
#search_view div[id$="_result_panel"] .backgrid tbody tr:nth-child(even) { background-color: rgba( 0, 174, 184, 0.1 ); }
#search_view div[id$="_result_panel"] .backgrid tbody tr:nth-child(odd) { background-color: #f5f5f5; }
#search_view div[id$="_result_panel"] .backgrid td { vertical-align: top; }

#report_summary {}
#report_summary>span:nth-child(1) { font-weight:bold; }
#report_save { margin: 0 0 10px auto; float: right; }

#report_table { width: 100%; }
#report_table .missionId { width: 200px; text-align: center; }
#report_table .instituteAndPersonName { width: 50%; }
#report_table .numServicesInfo { width: 120px; }
#report_table .typeLabel { width: 150px; }
#report_table .spanInfo { width: 400px; }
#report_table .personId { width: 125px; }
#report_table tbody .personId { text-align: right; }

#report_table .bundesland { width: 150px; }
#report_table .numCustomers { width: 75px; text-align: right; padding: 0 10px 0 0; }

#report_table tr.dienstgebiet .name_wrapper { display: flex; }
#report_table tr.dienstgebiet .contacts_wrapper { display: flex; }
#report_table tr.dienstgebiet .id { width: 50px; text-align: right; margin-right: 10px; }
#report_table tr.dienstgebiet .name { text-overflow: ellipsis; font-weight: bold; flex: 1; overflow: hidden; margin-left: 10px; }
#report_table tr.dienstgebiet .phone { width: 150px; overflow: hidden; text-overflow: ellipsis; }
#report_table tr.dienstgebiet .email { width: 200px; overflow: hidden; text-overflow: ellipsis; }


/* ---- person view --------------------------------------------------------------------*/
#person_view .core_header     .accordion_header_icon { background-color: #00aeb8; }
#person_view .address_header  .accordion_header_icon { background-color: rgba(228, 22, 20, 1); }
#person_view .contract_header .accordion_header_icon { background-color: rgba(204, 0, 212, 0.8); }
#person_view .bankaccount_header .accordion_header_icon { background-color: rgb(238, 154, 0); }

#person_view .accordion_header_label_2 {width: 300px; height: 24px; }
#person_view .accordion_header_label_2:not(.ui-accordion-header-active) { color: #666; text-overflow: ellipsis; overflow: hidden; }

#person_view .ui-accordion-header.ui-accordion-header-active .accordion_header_label_2 div { border: none; border-radius: 5px;
    padding: 0 10px; background: #eee; color: #777; height: 24px; line-height: 26px; box-sizing: border-box; font-weight: bold; }
#person_view .ui-accordion-header:not(.ui-accordion-header-active) .accordion_header_label_2 div { background: #f5f5f5; color: #777;
    border: 1px solid #aaa; }
#person_view .accordion_header_label_2 div { border: 1px solid #aaa; border-radius: 3px; padding: 0 10px;
    background: #fff; color: #777; height: 22px; line-height: 24px; text-overflow: ellipsis;  overflow: hidden;}

#person_view .core_header:not(.ui-accordion-header-active):not(:hover)    .accordion_header_icon { background-color: #00aeb8; }
#person_view .core_header .accordion_header_label_2 { color: #444; font-weight: bold; }
#person_view .ui-accordion-header.contract_header.ui-accordion-header-active div { border: none; line-height: 26px; }
#person_view .ui-accordion-header.contract_header:not(.ui-accordion-header-active) .accordion_header_icon { background-color: rgba(131, 9, 213, 0.52); }
#person_view .address_header:not(.ui-accordion-header-active) .accordion_header_icon { background-color: rgba(178, 23, 21, 0.81); }

#person_view .person_wrapper { margin: 10px 5px 0 10px }
#person_view .accordion_header_icon { color: #f5f5f5; }

#person_view #core_panel { padding: 2.5em 2.5em 0 2.5em; }
#person_view #core_panel .row_1 {}
#person_view #core_panel .row_2 {}
#person_view #core_panel .row_2 { margin: 15px 0 0 0; }
#person_view #core_panel .column_1 { width: 140px; }
#person_view #core_panel .column_2 { width: 250px; margin: 0 3em 0 10px; }
#person_view #core_panel .column_3 { width: 120px; }
#person_view #core_panel .column_4 { width: 200px; margin: 0 50px 0 1em; }
#person_view #core_panel .column_5 { width: 100px; }

#person_view #bankaccount_panel .form_button { margin: 0 0 0 auto; padding: 0 8px; }
#person_view #bankaccount_panel #bankaccount_sepamandate_formular_button { margin: 0 0 10px 10px; }
#person_view #bankaccount_panel #bankaccount_table tr.active { background: rgba(0,174,184,.25); color: #444; }
#person_view #bankaccount_panel #bankaccount_table td.editable { cursor: pointer; }
#person_view #bankaccount_panel #bankaccount_table .id { width: 5%; text-align: right; }
#person_view #bankaccount_panel #bankaccount_table .accountHolder { width: 20%; }
#person_view #bankaccount_panel #bankaccount_table .creditInstitution { width: 20%; }
#person_view #bankaccount_panel #bankaccount_table .iban { width: 15%; }
#person_view #bankaccount_panel #bankaccount_table .bic { width: 15%; }
#person_view #bankaccount_panel #bankaccount_table .validFrom { width: 120px; }
#person_view #bankaccount_panel #bankaccount_table .validTo { width: 120px; }
#person_view #bankaccount_panel #bankaccount_table .sepamandate_edit { width: 15%; text-align: center; }
#person_view #bankaccount_panel #bankaccount_table .has_active_sepamandate { color: rgba(228, 22, 20, 1) !important; }
#person_view #bankaccount_panel #bankaccount_table .bankaccount_edit { width: 5%; text-align: center; }

/*#sepamandate_dialog #sepamandate_table { margin: 0; width: auto; }*/
#sepamandate_dialog .row_1 { margin: 20px 0px 20px 0px; }
#sepamandate_dialog .row_2 { margin: 20px 0px 20px 0px; }
#sepamandate_dialog .form_button { width: 15em; max-width: 100%; vertical-align: middle; margin-left: 10px; }
#sepamandate_dialog #sepamandate_table .form_button { margin-left: 0; }
#sepamandate_dialog #sepamandate_form_button { margin: 0 0 0 auto; }
#sepamandate_dialog #sepamandate_add_button { margin: 0 0 10px 10px; }
#sepamandate_dialog #sepamandate_table td.editable { cursor: pointer; }
#sepamandate_dialog #sepamandate_table .reference    { width: 60px; text-align: center; }
#sepamandate_dialog #sepamandate_table .status       { width: 90px; text-align: center; }
#sepamandate_dialog #sepamandate_table .creationDate { width: 90px; text-align: center; }
#sepamandate_dialog #sepamandate_table .validFrom  { width: 110px; max-width: 110px; text-align: center; }
#sepamandate_dialog #sepamandate_table .validTo  { width: 110px; max-width: 110px; text-align: center; }
#sepamandate_dialog #sepamandate_table .signingDate  { width: 110px; max-width: 110px; text-align: center; }
#sepamandate_dialog #sepamandate_table .lastUsedDate { width: 90px; text-align: center;}
#sepamandate_dialog #sepamandate_table .document     { width: 30px; text-align: center;}
#sepamandate_dialog #sepamandate_table tr.sepamandate_new { background: #fff; }
#sepamandate_dialog #sepamandate_table tr.sepamandate_sent { background: #fff; }
#sepamandate_dialog #sepamandate_table tr.sepamandate_signed { background: rgba(0,174,184,.25); color: #444; }
#sepamandate_dialog #sepamandate_table tr.sepamandate_invalid { background: #fff; }

#bankaccount_dialog { padding: 40px 20px 10px 20px; height: auto; min-height: 250px; zIndex: 10000; }
#bankaccount_dialog .column_1 { width: 10em; }
#bankaccount_dialog .column_2 { min-width: 25em; }
#bankaccount_dialog .row_2 { display: block; margin-top: 40px; }

#person_view .core_header_label_2 { border: 1px solid #aaa; border-radius: 3px; padding: 0 10px; }
#person_view #contract_panel { padding: 1.5em 2.5em 0 2.5em; overflow: hidden; }
#person_view #contract_panel .ui-tabs .ui-tabs-nav { font-size: 100%; }
#person_view #contract_panel #contract_core { padding-top: 20px; }
#person_view #contract_panel .tab_content { margin: 10px 0 0 0; }
#person_view #contract_panel .row_1 {}
#person_view #contract_panel .row_2 { margin: 20px 0 10px 0; }
#person_view #contract_panel .column_1 { width: 150px; flex: 0 0 auto; }
#person_view #contract_panel .column_2 { width: 300px; margin: 0 2em 0 1em; }
#person_view #contract_panel .column_3 { width: 150px; flex: 0 0 auto; }
#person_view #contract_panel .column_4 { width: 250px; }
#person_view #contract_panel .column_4 { width: 250px; }
#person_view #contract_panel .column_5 { width: 160px; }
#person_view #contract_panel .column_6 { width: 60px; margin: 0 10px; }
#person_view #contract_panel .column_8 { width: 150px; margin-left: 25px; }
#person_view #contract_panel .column_9 { width: 150px; }
#person_view #contract_panel #contract_core .column_3 { width: 482px; flex: 0 0 auto; }
#person_view #contract_panel #contract_core .column_4 { width: 300px; flex: 0 0 auto; margin: 0 3em 0 1em; }
#person_view #contract_panel #contract_core #contract_address_list.list_box { padding: 0 0 7px 0; }
#person_view #contract_panel #contract_core #contract_address_list.list_box .list_box_item { height: 20px; }

#person_view #contract_panel .toolbar { width: calc(100% - 19px); height: 35px; background: #eee; border-radius: 4px;
    margin: 0; padding: 15px 0 0 20px; }
#person_view #contract_panel .toolbar .selectric-wrapper { margin: 0 20px 2px 10px; }
#person_view #contract_panel .toolbar div[class*="_filter_info"] {margin: 0 0 0 20px; }
#person_view #contract_panel .ui-tabs .ui-tabs-panel { padding: 0; }

#person_view #contract_panel #contract_dienstgebiet_label .icon-chain { margin: 5px; }

#person_view #contract_panel .chain_button { margin: 0 0 10px 0; width: 36px; }
#person_view #contract_panel .chain_button:hover { color: #777; background: #70f7ff; }
#person_view #contract_panel .chain_button.enabled { background: #419636 !important; color: #ffff00 !important; font-weight: bold !important; }

#person_view #contract_panel #activity_table .fixed_grid_content tbody tr >td.activityType >.is_mission { background-color: rgba( 0, 174, 184, 0.25 ); }
#person_view #contract_panel #activity_table .fixed_grid_content tbody .activity_sticker.is_service { margin: 0 5px 0 25px; }
#person_view #contract_panel #activity_table .fixed_grid_content tr.is_mission{ background: rgba(0, 174, 184, 0.36); }

#person_view #contract_panel #activity_table .service_table .activity_sticker_wrapper { width: 180px; text-align: center; }
#person_view #contract_panel #activity_table .mission_table .activity_sticker_wrapper { width: 150px; text-align: center; }
#person_view #contract_panel #activity_table .mission_table .activity_sticker .activity_name { float: right; }
#person_view #contract_panel #activity_table .names { width: 20%; }
#person_view #contract_panel #activity_table .numberOrType { width: 10%; }
#person_view #contract_panel #activity_table .spanInfo { width: 250px; text-align: center; }
#person_view #contract_panel #activity_table .durationInfo { width: 80px; text-align: center; }
#person_view #contract_panel #activity_table .dienstgebietName { width: 15%; }
#person_view #contract_panel #activity_table .candidateName { width: 15%; }
#person_view #contract_panel #activity_table .typeLabel { width: 10%; }
#person_view #contract_panel #activity_table .missionId { width: 100px; text-align: center; }
#person_view #contract_panel #activity_table .sumTotal { width: 75px; }

#person_view #contract_panel #activity_table tbody .name_pair { margin: 0 0 0 17px; }

#person_view #contract_panel #contract_accounting #service_charge_button { margin: 0 0 0 auto; padding: 0 10px; }
#person_view #contract_panel #contract_accounting #month_to_charge { margin: 0 60px 0 5px; text-align: center; width: 6em; }
#person_view #contract_panel #contract_accounting #invoice_button { margin: 0 40px 0 0; padding: 0 10px; }
#person_view #contract_panel #accounting_table .billingDate { width: 150px; }
#person_view #contract_panel #accounting_table .numberFormatted { width: 150px; }
#person_view #contract_panel #accounting_table .display { width: 3%; text-align: center; }
#person_view #contract_panel #accounting_table .type { width: 15%; }
#person_view #contract_panel #accounting_table .statusString { width: 10%; }
#person_view #contract_panel #accounting_table .detailString { width: 35%; }
#person_view #contract_panel #accounting_table .netSum { width: 10%; text-align: right; }

#person_view #contract_panel #contract_document #document_first { width: 6em; margin: 0 20px 0 10px; text-align: center; }
#person_view #contract_panel #contract_document #document_span { margin: 0 50px 0 10px; }
#person_view #contract_panel #contract_document #document_select_wrapper { height: 24px; margin: 0 20px 0 20px; }
#person_view #contract_panel #contract_document #document_upload_button { height: 25px; line-height: 22px; width: 80px; margin: 0 10px 2px 30px; }

#person_view #task_button_label { margin: 0 10px 0 auto; }
#person_view #task_button { width: 26px; height: 26px; margin: 0 25px 0 10px; }
#person_view .contract_task_popup { width: auto; max-width: 50em; color: #777; padding: 10px 10px; }
#person_view .contract_task_popup .backgrid { border: none;  }
#person_view .contract_task_popup .backgrid td { background: #fff; border: none;  }
#person_view .contract_task_popup .backgrid .closedDatetime { width: 10%; }
#person_view .contract_task_popup .backgrid .description { width: 90%; }
#person_view .contract_task_popup .backgrid .description .icon-ok { color: #419636; margin-right: 5px; }
#person_view .contract_task_popup .backgrid .description .icon-task { color: #ee2956; margin-right: 5px; }

#person_view #contract_panel #document_table .categoryName     { width: 30%; }
#person_view #contract_panel #document_table .originalFilename { width: 40%; }
#person_view #contract_panel #document_table .creationDateTime { width: 20% }
#person_view #contract_panel #document_table .display          { width: 10%; text-align: center; }

#person_view #contract_panel #contract_comment #comment_edit { width: 25em; height: 20px; margin: 0 0 0 50px; }
#person_view #contract_panel #contract_comment #comment_first { width: 6em; margin: 0 20px 0 10px; text-align: center; }
#person_view #contract_panel #contract_comment #comment_span { margin: 0 50px 0 10px; }
#person_view #contract_panel #contract_comment #comment_select { margin: 0 0 0 50px; }
#person_view #contract_panel #contract_comment #comment_select .selectric-wrapper { min-width: 150px; height: 24px; }
#person_view #contract_panel #contract_comment #comment_new_button { height: 25px; line-height: 20px; width: 80px; }
#person_view #contract_panel #contract_comment #comment_filter_info {margin: 0 0 0 20px; }

#person_view #contract_panel #comment_table .id { width: 50px; }
#person_view #contract_panel #comment_table .subjectLabel { width: 100px; font-weight: bold; }
#person_view #contract_panel #comment_table .createdByUsername { width: 125px; }
#person_view #contract_panel #comment_table .creationDate { width: 150px }
#person_view #contract_panel #comment_table .comment textarea { width: calc(100% - 20px); height: 100%; min-height: 5em; box-sizing: border-box; }
#person_view #contract_panel #comment_table .fixed_grid_content td { line-height: 15px; vertical-align: top;
    padding: 6px 5px 4px 5px; height: 15px; }

#person_view #contract_panel #contract_qualification { padding-top: 20px; }
#person_view #contract_panel #contract_qualification .column_2 { width: 150px; }
#person_view #contract_panel #contract_qualification .column_3 { width: 183px; margin: 0 1em 0 0; }
#person_view #contract_panel #contract_qualification .column_4 { width: auto; margin: 0; }
#person_view #contract_panel .qualification_cell { width: 100%; }
#person_view #contract_panel .qualification_cell div:first-child { min-width: 80px; }
#person_view #contract_panel .qualification_cell *:not(:first-child) { margin-left: 3px; white-space: nowrap; }

.contact_cell {}
.contact_cell .list_box { width: 99%; }
.contact_cell .contact_assign_button { margin: 0 0 0 5px; width: 28px; height: 28px; line-height: 28px; }

/* ---- contract_document_dialog ---------------------------------------------------*/
#contract_document_dialog #dialog_content { padding: 30px 20px 0 20px; }
#contract_document_dialog .form_input_column { min-width: 300px; }
#contract_document_dialog #file_select { cursor: pointer; pointer-events: all; }
#contract_document_dialog #report { min-height: 50px; margin: 30px 0 0 0; }
#contract_document_dialog .report_item { display: block; }
#contract_document_dialog .report_icon * { padding: 3px; }

/* ---- contact_dialog -------------------------------------------------------------*/
#contact_dialog { overflow: hidden; padding: 10px 25px; }
#contact_dialog #report_summary { margin: 20px 0 10px 0; }
#contact_dialog #contact_headline { color: #666; margin: 20px 0 15px 0; }
#contact_dialog .row_1 { margin:10px 0; }
#contact_dialog .column_1 { width: 8em; }
#contact_result_panel { height: calc(100% - 160px); }
#contact_dialog #report_table tbody tr:nth-child(even) { background-color: rgba( 0, 174, 184, 0.1 ); }
#contact_dialog #report_result_table tbody tr:nth-child(odd) { background-color: #f5f5f5; }

/* ---- address_panel --------------------------------------------------------- */
.address_panel .column_1 { width: 100px; }
.address_panel .column_2 { width: 250px; margin: 0 50px 0 10px; }
.address_panel .column_3 { width: 115px; }
.address_panel .column_4 { width: 300px; margin: 0 50px 0 10px;}
.address_panel .column_5 { width: 65px; }
.address_panel .column_6 { width: 250px; margin: 0 5px 0 1em; }
.address_panel .column_7 { width: 35px; margin: 0 3em 0 0; }
.address_panel .column_7 .form_spacer { height: 28px; margin: 0; }
.address_panel .column_8 { width: 30px; }
.address_panel .column_9 { width: 200px; margin-left: 0.5em; }
.address_panel #address_position { height: 26px; line-height: 24px; box-sizing: border-box; margin: 0 0 2px 0; padding: 0 5px;
    border: 1px solid #aaa; border-radius: 3px; font-size: 90%; }
.address_panel #address_position div:not(:first-child) { margin: 0 3px 0 auto; }

/* ---- observations ---------------------------------------------------------- */
.menu #observation_icon { margin: 3px 0 0 10px; /*display: none;*/ }
.menu #observation_icon span.header_icon { padding: 3px; border-radius: 3px; }
.menu #observation_icon span.header_icon.important { color: #fff; }
.menu #observation_icon span.header_icon.pending { color: #d00000; }

#meldewege_popup { width: 1200px; padding: 20px 25px 15px 25px; }
#meldewege_popup #toolbar { background: #eee; border-radius: 4px; padding: 10px 15px 5px 15px; margin: 0; width: auto; }
#meldewege_popup #table_headline { padding: 10px; margin: 2px 0; width: auto; font-weight: bold; }
#meldewege_popup #content { margin: 2px 0 0 0; }
#meldewege_popup .selectric-wrapper.current_observer { width: 100px; margin: 0 0 0 10px; }
#meldewege_popup #activity_sticker { margin: 0 20px; line-height: 26px; }
#meldewege_popup #activity_sticker .activity_name { float: none; }
#meldewege_popup #load_observer_wrapper { float: right; margin: 0 0 0 auto; }
#meldewege_popup #load_observer_id { margin: 0 5px 0 10px; width: 150px; }
#meldewege_popup #observer_active_wrapper { margin: 0 0 0 10px; }
#meldewege_popup #load_observer_id::-webkit-inner-spin-button,
#meldewege_popup #load_observer_id::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }

/* ---- planer view ---------------------------------------------------------------- */
.planer_wrapper { width: 100%; margin: 0; box-sizing: border-box; overflow-y: auto; overflow-x: hidden; padding: 10px !important; }

#planer_tool_panel { box-sizing: border-box; height: 50px; width: 100%;
    padding: 10px 0 0 23px; margin: 0 0 -1px 0; white-space: nowrap; background-color: #eee; border: 1px solid #ddd }
#planer_tool_panel .form_label { font-size: 85%; color: #a5a5a5; flex: 4 4 auto; margin: 0 10px 0 0; }

#planer_tool_panel input.hasDatepicker { width: 8em; text-align:center; }
#planer_tool_panel #time_scroll { margin: 0; max-width: 12em; flex: 1 2 auto; }
#planer_tool_panel .scroll_unit_wrapper { max-width: 8em; margin: 0 2px 0 3px; }
#planer_tool_panel .form_button { width: 26px; height: 26px; line-height: 26px; border: 1px solid #ccc; border-radius: 3px; }
#planer_tool_panel #time_first { margin: 0 0 0 20px; max-width: 8em; height: 26px; text-align: center; flex: 1 2 auto; }
#planer_tool_panel .time_span_wrapper { max-width: 8em; margin: 0 20px 0 3px; flex: 1 2 auto;
    border: 1px solid #ccc; border-radius: 3px; color: #777; }
#planer_tool_panel #color_button { max-width: 13em; width: auto; height: 26px; margin: 0 20px 0 5px; flex: 1 2 auto;}

#planer_tool_panel #color_popup { width: 420px; padding: 0 15px 10px 15px; }
#planer_tool_panel #color_popup .column_1, #color_popup .column_2 { width: 45%; margin: 2px 10px; }
#planer_tool_panel #color_popup .form_label_left { font-size: 100%; padding: 0; margin: 15px 0 2px 0; color: #444; }
#planer_tool_panel #color_popup #mission_scheme, #planer_tool_panel #color_popup #service_scheme { height: 75px; }
#planer_tool_panel #color_popup #service_scheme #distance_limit { width: 75px; height: 18px; margin: 4px 10px 4px 5px; display: inline-block; }
#planer_tool_panel #color_popup #legend { border-top: 1px solid #a5a5a5; margin: 3px 0 10px 0; background: #ffffff; }

.legend_box { border-radius: 4px; padding: 2px 8px; margin: 1.5px 0 1.5px 0; width: 10em; height: 14.5px; font-size: 90%; }
canvas.legend_box { color: #cbfff7; margin: -1px 0; }
#gradient_near, #gradient_long {
    background: #ffff00;
    background: -moz-linear-gradient(left, #ffff00 0%, #00ff00 25%, #47ffff 50%, #0000ff 75%, #ff00ff 100%);
    background: -webkit-linear-gradient(left, #ffff00 0%,#00ff00 25%,#47ffff 50%,#0000ff 75%,#ff00ff 100%);
    background: linear-gradient(to right, #ffff00 0%,#00ff00 25%,#47ffff 50%,#0000ff 75%,#ff00ff 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffff00', endColorstr='#ff00ff',GradientType=1 ); }

#planer_tool_panel #filter_expression { max-width: 18em; margin: 0 0 0 3px; flex: 1 4 auto; }
#planer_tool_panel #filter_button { max-width: 200px; width: 200px; height: 26px; padding: 0 5px; margin: 0 0 0 3px; overflow: hidden; flex: 1 4 auto; }
#planer_tool_panel #filter_reset_button { margin: 0 10px 0 3px; }

#planer_tool_panel #filter_popup { width: 550px; padding: 15px 0 5px 10px; }
#planer_tool_panel #filter_popup .column_1, #filter_popup .column_2 { width: 45%; margin: 2px 10px; }
#planer_tool_panel #filter_popup .form_label_left { font-size: 100%; color: #444; }
#planer_tool_panel #filter_popup #filter_operator { padding: 2px 4px 2px 4px; }
#planer_tool_panel #filter_popup #filter_operator_and { margin-left: 45px; }
#planer_tool_panel #filter_popup #filter_service { margin-left: 25px; }
#planer_tool_panel #filter_popup #filter_attributes .form_box { border: none; height: 22px; cursor: pointer; }
#planer_tool_panel #filter_popup #filter_attributes .form_box.selected { background: #00aeb8; color: #fff; }
#planer_tool_panel #filter_popup #filter_attributes .form_box label { cursor: pointer; vertical-align: top; }
#planer_tool_panel #filter_popup #filter_attributes input[type=text] { width: 65px; float: right; margin: 1px 5px 0 0;
    padding: 1px 3px 1px 3px; height: 13px; }
/*#planer_tool_panel #filter_popup #filter_tasks input[type=checkbox] { height: 18px; }*/
/*#planer_tool_panel #filter_popup #filter_tasks input[type=checkbox]+label { line-height: 24px; }*/
#planer_tool_panel #filter_popup #filter_tasks { background: #f5f5f5; border: 1px solid #ccc; border-radius: 3px;
    padding: 3px 8px 5px 2px; }
#planer_tool_panel #filter_popup #filter_tasks .form_checkbox { border: none; background: inherit; font-size: 90%; height: 20px;
    margin: 0; padding: 0; }
#planer_tool_panel #filter_popup #filter_tasks .form_checkbox input { height: 14px; width: 14px; }
#planer_tool_panel #filter_popup #filter_tasks .form_checkbox input+label { height: 20px; line-height: 22px; }
#planer_tool_panel #filter_popup .label_wrapper { max-width: 100px; overflow: hidden; height: 22px; line-height: 22px; }
#planer_tool_panel #filter_popup .bottom_row .form_button { padding: 0 5px; width: auto; }
#planer_tool_panel #filter_popup #filter_reset { margin: 0 20px 0 auto; }
#planer_tool_panel #filter_popup #filter_hide { margin: 0 20px 0 10px; }

#planer_table_panel { height: auto; min-height: 0; width: auto; margin: 0 0 15px 0; border: none; box-sizing: border-box; }
#planer_table_panel .activity_sticker_wrapper span.mission_new { margin: 1px 5px 0px auto; width: 50px;
    line-height: 20px; float: right; border: 1px solid #aaa; border-radius: 3px;}
#planer_table_panel .activity_sticker_wrapper span.mission_new.mission_valid:not(.disabled) { color: #ffff00; background: #00d129; }
#planer_table_panel .activity_sticker_wrapper .activity_sticker { height: 21px; }

#planer_editor_wrapper { width: auto; margin: 0 0 10px 0; }

#planer_header_panel { padding: 0; background: none; border: none; box-sizing: border-box; width: 100%; }
#planer_grid_panel { height: 100%; width: 100%; padding: 0; overflow: visible; background: none; border: none;  }
#planer_grid_panel svg #mission rect:not(.filtered), #planer_grid_panel svg #service rect:not(.filtered) { cursor: pointer; }
#planer_grid_panel svg #mission rect.filtered, #planer_grid_panel svg #service rect.filtered { cursor: not-allowed; }

#planer_cursor_needle { display:none; background-color: #00aeb8; width: 2px; position: absolute; pointer-events: none; }
#planer_cursor_tip { display:none; background-color: rgba(0, 174, 184, 0.75); color: #eee; border-radius: 4px;
    padding:3px 2px 0 4px; box-sizing:border-box; width: 10em; height:19px; position: absolute; font-size:75%;
    text-align:center; border:1px solid #00aeb8; pointer-events: none; }

/* ---- service editor -------------------------------------------------*/
#service_editor { height: auto; overflow-x: auto; width: 100%; box-sizing: border-box; }
#service_editor .header_row { margin: 0; padding: 15px 20px 10px 0; background: #eee; box-sizing: border-box; }
#service_editor .content_row { margin: 15px 0; }
#service_editor .column_1 { min-width: 80px; }
#service_editor .column_2 { min-width: 220px; margin: 0 0 0 1em; }
#service_editor .column_3 { min-width: 100px; margin: 0 0 0 1em; }
#service_editor .column_4 { min-width: 300px; margin: 0 0 0 1em; }
#service_editor .column_5 { min-width: 100px; margin: 0 0 0 3em; }
#service_editor .column_6 { min-width: 300px; margin: 0 1em 0 1em; }
#service_editor .column_7 { min-width: 350px; margin: 0 1em 0 1em; }
#service_editor .content_row .column_4 { min-width: 260px; }
#service_editor .content_row .column_6 { margin: 0 1em 0 0; min-width: 200px; }

#service_editor #service_comment_wrapper { margin: 0 0 0 5px; padding: 1px; width: 200px; text-align: left;
    line-height: 0; background: none; border: none; }
#service_editor .buttons { margin: 0 10px 1px auto; white-space: nowrap }
#service_editor .form_button { width: 36px; height: 36px; line-height: 36px; font-size: 110%; }
#service_editor .form_button span:hover { background-color: transparent !important; color: #00aeb8 !important; cursor: pointer; }
#service_editor .fee_cell *:not(input) { margin: 0px 4px 0 4px; color: #a9a9a9; height: 26px; line-height: 26px; }
#service_editor .fee_label { width: 6em; text-align: left; }
#service_editor .fee_cell .duration { width: 3em; font-weight: bold; color: #777 !important; white-space: nowrap; margin-right: 15px; }
#service_editor #start_day  { width: 10em; }
#service_editor #start_hour { width: 10em; margin:0 0 0 5px; }
#service_editor #end_day    { width: 10em; }
#service_editor #end_hour   { width: 10em; margin:0 0 0 5px; }
#service_editor #service_confirmation_button { width: 20%; height: 26px; line-height: 28px; }
#service_editor .confirmation_state_wrapper, #service_editor .duration_wrapper { height: 26px; line-height: 26px; padding: 0; margin: 0;
    border: 1px solid #aaa; border-radius: 3px; box-sizing: border-box; cursor: default; }
#service_editor .confirmation_state_wrapper { width: 80%; }
#service_editor .confirmation_state_wrapper>span, #service_editor .duration_wrapper>span { line-height: 26px;
    padding: 0 0 0 3px; margin: 0 0 0 5px; cursor: default; }
#service_editor .confirmation_state, #service_editor .duration_total { margin: 0 0 0 10px; }

/* ---- service confirmation dialog --------------------------------------------*/
#service_confirmation_dialog { width: auto; max-height: none; height: auto; margin: 30px 0 0 0; }
#service_confirmation_dialog #dialog_content { width: auto; min-height: 100px; }
#service_confirmation_dialog .form_row { width: auto; margin: 0 20px; }
#service_confirmation_dialog #mail_editor { margin: 0; }

/* ---- confirmation_state ------------------------------------------------------*/
.confirmation_state_wrapper a { display: inline-block; margin: 0 0 0 3px; pointer-events: auto; }

/* ---- mission editor ---------------------------------------------------------*/
#mission_editor { height: auto; overflow-x: auto; width: 100%; margin: 0; }
#mission_editor .header_row { margin: 0; padding: 10px 20px 5px 10px; background: #eee; box-sizing: border-box; }
#mission_editor .content_row { margin: 1px 0 0 0; }
#mission_editor .column_1 { margin: 0 0 0 15px; min-width: 70px; }
#mission_editor .column_2 { width: 300px; }
#mission_editor .column_3 { margin: 0 0 0 20px; min-width: 0; }
#mission_editor .column_4 { margin: 0 30px 0 0; min-width: 100px; }
#mission_editor .column_5 { margin: 0 0 0 auto; float: right; }
#mission_editor .column_6 { max-width: 120px; margin: 0 0 0 30px; white-space: nowrap; float: right; }

#mission_editor #activity_sticker_wrapper { margin: 0 0 0 1em; text-align: left; height: 28px; line-height: 28px; }
#mission_editor #candidate_header { margin: 0 0 0 20px; }
#mission_editor #candidate_label { margin: 0 6em 0 0; }
#mission_editor #mission_comment_wrapper { margin: 3px 0 2px 18px; padding: 1px; width: 200px; text-align: left;
    line-height: 0; background: none; border: none; }

#mission_editor #mission_todos_wrapper { border: 1px solid #ccc; border-radius: 4px; margin: 3px 0 0 0; }
#mission_editor #mission_todos_buttons { height: 100%; margin: 2px 10px 2px 0; }
#mission_editor #mission_todos { display: flex; flex-wrap: wrap; text-align: left; padding: 3px 10px;  font-size: 90%; }
#mission_editor #mission_todos .empty { font-weight: bold; font-size: 12px; }
#mission_editor #mission_todos .todo_item { padding: 0 8px; margin: 2px 3px; box-sizing: border-box; height: 24px; line-height: 24px;
    border: 1px solid #ccc; border-radius: 4px; color: #666; background: #f5f5f5; font-weight: bold; }
#mission_editor .buttons .icon-remove { padding: 0 2px; }
#mission_editor .form_button { margin: 3px 0 3px 12px; width: 28px; height: 24px; line-height: 22px; }
#mission_editor .column_6 .form_button { width: 36px; height: 36px; line-height: 36px;  }
#mission_editor .button_cell { padding: 0 0 0 12px; }
#mission_editor .button_cell .form_button { margin: 2px 5px 2px 0; width: 50%;}
#mission_editor .button_cell .button.route_summary { padding:3px 40px 2px 35px; }
#mission_editor .todo_item { cursor: pointer; }
#mission_editor .todo_item span:first-child:hover { -webkit-filter: brightness(125%); filter: brightness(125%); }

#mission_editor .history_popup { width: 50em; overflow: auto; color: #777; padding: 5px 10px; }
#mission_editor .history_popup .backgrid { border: none;  }
#mission_editor .history_popup .backgrid td { background: #fff; border: none;  }
#mission_editor .history_popup .backgrid td div { display: inline; }
#mission_editor .history_popup .backgrid .closedByUsername { width: 25%; }
#mission_editor .history_popup .backgrid .closedDatetime { width: 25%; }
#mission_editor .history_popup .backgrid .description { width: 40%; }
#mission_editor .history_popup .backgrid .description .icon-ok { color: #419636; margin-right: 5px; }
#mission_editor .history_popup .backgrid .undo { width: 10%; }
#mission_editor .history_popup .backgrid .undo .disabled { color: #ddd; }

#mission_editor #comment_popup { width: 400px; overflow: auto; color: #777; padding: 10px; }
#mission_editor #comment_popup textarea { width: 100%; height: 200px; }

#mission_editor #mission_document_table { border-top: 1px solid #fff; }
#mission_editor #mission_document_table tbody { background: #fff; }
#mission_editor #mission_document_table td { padding: 1px 0 0 5px; box-sizing: border-box; }
#mission_editor #mission_document_table .customerNameWithId { width: 30%; }

#mission_editor #mission_document_table .document_button { width: 15px; height: 15px; min-height: 15px; line-height: 16px;
    font-size: 10px; margin: 0 20px 0 0; border-radius: 3px; }
#mission_editor #mission_document_table .document_button .icon-search {font-size: 16px; }

#mission_editor #mission_document_table .document_button:hover { -webkit-filter: brightness(150%); filter: brightness(150%); }
#mission_editor #mission_document_table .document_button.category_ready { color: #ffff00; background: #419636; }
#mission_editor #mission_document_table .document_button.category_pending { color: #fff; background: #e80c00; }
#mission_editor #mission_document_table .preview_button { font-size: 15px; }
#mission_editor #mission_document_table th>span[data-categoryid] { cursor: pointer; }
#mission_editor #mission_document_table th>span[data-categoryid]:hover { -webkit-filter: brightness(125%); filter: brightness(125%); }
#mission_editor #mission_document_table a[href][target=_blank]  { display: inline; }
#mission_document_table tr.selected td, #mission_document_table tr.selected th, #mission_document_table th.selected, #mission_document_table tr.selected a, #mission_document_table tr.selected [data-route], #mission_document_table .selected [class^="icon-"], #mission_document_table .selected [class*=" icon-"]  {
    background-color: #74e0e0; color: #555; }

#mission_editor #mission_document_table .row_editor { height: auto; padding: 0 0 0 20px; }

#mission_editor #document_panel { margin: 10px 0; }
#mission_editor #document_panel .column_1 { flex: 1 1 auto; margin: 0 40px 0 0; }
#mission_editor #document_panel .column_2 { flex: 1 1 auto; margin: 0 40px 0 auto; min-width: 550px; }
#mission_editor #document_panel .column_3 { flex: 0 0 auto; margin: 0 40px 0 auto; }
#mission_editor #document_panel .column_4 { flex: 0 0 auto; margin: 3px 20px 0 auto; min-width: 25px; width: 25px; }
#mission_editor #document_panel .button_wrapper { border: 1px solid #ccc; border-radius: 3px; padding: 3px 5px 3px 10px;
    background: #eee; color: #777; }
#mission_editor #document_panel .button_wrapper .label { max-width: 250px; margin: 0 20px 0 0; overflow: hidden; text-overflow: ellipsis; }
#mission_editor #document_panel .button_wrapper .form_button { width: 45px; margin: 0 5px 0 auto; float: right; font-size: 1.2em; }
#mission_editor #document_panel .button_wrapper .form_button.important { background: #74e0e0; color: #555 !important; }
#mission_editor #document_panel .button_wrapper .form_cell { margin: 0 0 3px 0; }
#mission_editor #document_panel .button_wrapper .form_cell:last-child { margin: 0; }
#mission_editor #document_panel .form_label { margin: 0 0 4px 0; }
#mission_editor #document_panel #close_button { margin: 0 20px 0 0; }
#mission_editor #document_panel .button_wrapper .observation_button { width: 80px; height: 24px; line-height: 18px; font-size: 150%; display: inline-block; }
#mission_editor #document_panel .button_wrapper .observation_button.pending {  color: #d00000 !important; }
#mission_editor #document_panel #document_list { display: inline-block; }
#mission_editor #document_panel .document_list_item { display: flex; height: 16px; line-height: 16px; }
#mission_editor #document_panel .document_list_item a { max-width: 20em; }
#mission_editor #document_panel .document_list_item a span { margin: 0 5px 0 0; }
#mission_editor #document_panel .document_category { margin: 0 20px 0 0; text-align: left; height: 24px; width: 22em; min-width: 150px; }
#mission_editor #document_panel .ajax_indicator_small { margin: 0; vertical-align: middle; }

#mission_editor #document_panel .table_area th { background: #eee; color: #777; }
#mission_editor #document_panel .table_area td { border: 1px solid #eee; }
#mission_editor #document_panel .table_area { background: #eee; padding: 1px; border-radius: 3px; }
#mission_editor #document_panel .service_table thead th { height: 20px; line-height: 20px; }
#mission_editor #document_panel .service_table td.editable { padding: 0; cursor: pointer; }
#mission_editor #document_panel .service_table td.editable input { width: 90%; }

#mission_editor #document_panel .service_table .serviceId { width: 6em; text-align: center; }
#mission_editor #document_panel .service_table .spanInfo { width: 250px; text-align: center; }
#mission_editor #document_panel .service_table .certificateCount { width: 7em; text-align: center; }
#mission_editor #document_panel .service_table .durationExtra { width: 7em; text-align: center; cursor: pointer; }
#mission_editor #document_panel .service_table .comment {}

/* ---- mission task dialog --------------------------------------------------*/
#mission_task_dialog { padding: 10px 0px; overflow: visible; }
#mission_task_dialog .data_column { width: 750px; margin: 20px 0 5px 0; }
#mission_task_dialog .report_column { width: 350px; margin: 20px 20px 20px 40px; }
#mission_task_dialog .editor_column { width: 65%; }
#mission_task_dialog .attachment_column { flex: 1; margin: 10px 20px; }
#mission_task_dialog #attachment_list_header { margin: 0px 0 3px 0; }
#mission_task_dialog #attachment_list_box { border: 1px solid #ccc; background: #f5f5f5; border-radius: 4px; padding: 6px 5px 5px 3px; }
#mission_task_dialog #attachment_list {}
#mission_task_dialog #attachment_list .form_checkbox { margin: 0 0 3px 0; border: none; background: transparent; white-space: nowrap; }
#mission_task_dialog #attachment_list label { width: 160px; margin: 0 0 0 5px; height: 20px; line-height: 18px; font-size: 90%; display: inline-block;
    overflow: hidden; text-overflow: ellipsis; }
#mission_task_dialog #attachment_list a { width: 170px; margin: 0; display: inline-block; overflow: hidden;
    text-overflow: ellipsis; font-size: 80%; font-style: italic; }
#mission_task_dialog #attachment_list .form_checkbox { height: 18px; line-height: 18px; }
#mission_task_dialog #attachment_list .form_checkbox input[type=checkbox] { margin: 0 0 0 4px; }
#mission_task_dialog #attachment_list ul { margin: 2px 0 5px 0;}
#mission_task_dialog #attachment_checkbox_master { float: right; }
#mission_task_dialog .meldewege_column { flex: 1; margin: 0 20px; }
#mission_task_dialog #meldewege_headline { margin: 10px 0; }


#mission_task_dialog .column_1 { min-width: 9em; }
#mission_task_dialog .column_2 { min-width: 22em; }
#mission_task_dialog .column_3 { min-width: 15em; }
#mission_task_dialog .button_area { margin: 30px 0 0 0; }
#mission_task_dialog .button_area .form_button { margin: 10px 0 0 0; }
#mission_task_dialog .mail_subject { flex: 1; background: #fff; }
#mission_task_dialog .subject_row { margin: 0; }

.meldewege_table .form_button { padding: 1px 15px; border-radius: 2px; margin: 0 !important; }
.meldewege_table .targetLevelType { width: 10%; }
.meldewege_table .lastName { width: 15%; }
.meldewege_table .targetLevelName { width: 15%; }
.meldewege_table .mediumOverride { width: 8%; }
.meldewege_table .mediumAddress { width: 20%; }
.meldewege_table .sendStatus { width: 10%; }
.meldewege_table .sendAttempts { width: 10%; text-align: center; }
.meldewege_table .processId { width: 15%; }
.meldewege_table .enableSend { width: 7%; text-align: center;}
.meldewege_table .send { width: 7%; text-align: center; padding: 1px 0 0 0;  }
.meldewege_table .revoke { width: 7%; }

#mission_task_dialog .report_view { border: 1px solid #ccc; padding: 8px 4px 8px 12px; line-height: 1.5em; width: 350px;
    border-radius: 4px; }
#mission_task_dialog .report_view .ajax_indicator_small:not(.hidden) { display: inline-block; padding: 2px 0; }
#mission_task_dialog #report_list { overflow: hidden; }

.report_item { display: flex; color: #777; }
.report_item .report_icon [class^="icon-"] { font-size: 90%; margin: 0 10px 0 0; border-radius: 4px;
    height: 18px;  width: 18px; line-height: 20px; text-align: center; }
.report_item .report_icon .icon-ok { color: #ffff00; background: #419636; }
.report_item .report_icon .icon-cancel { color: #f5f5f5; background: #dc0008; }
.report_item .report_icon .icon-task { color: #fff; background: #00aeb8; }
.report_item .report_topic.topic_error { color: red; }
.report_text * { vertical-align: middle; }
.report_item .report_details { font-size: 90%; font-style: italic; }


/* ---- activity_info_popup ------------------------------------------*/
.activity_info_popup { background-color: #fff; border: none; border-radius: 4px;
    position: absolute; visibility: hidden; float: left; white-space: nowrap;
    box-shadow: 0 2px 25px rgba(0, 0, 0, 0.7); z-index: 11; }
.activity_info_popup .activity { display: table; }
.activity_info_cell { padding: 2px 7px; border-right: 1px solid #aaa; line-height: 14px;
    display: inline-block; color :#555; font-size: 12px; vertical-align: text-top; height: 100% }
.activity_info_popup .activity_info_cell:last-child { border-right:none; }
.activity_info_cell.customer>div:not(:first-child) { height: 14px; line-height: 14px; }
.activity_info_popup .todo_item { background: #ccc; color: #f5f5f5; height: 24px; }
.activity_info_popup .todo_item .icon-task { background: #36edf7; color: #007e86;
    border: none; border-radius: 3px; margin: 0px 4px 0px 10px; padding: 1px 3px; }
.activity_info_popup .todo_item .activity_info_cell { color: #f5f5f5; background: #00aeb8;
    padding: 2px 10px 2px 0; height: 20px; line-height: 22px; }

/* ---- services_cell --------------------------------------------------*/
.services_cell { display: flex; flex-wrap: wrap; padding: 2px 5px 0 5px; }
.service_box { width: 80px; margin: 1px; padding: 0 5px; border-radius: 4px;
    text-align: center; overflow: hidden; font-size: 100%; cursor: pointer; line-height: 18px; }


/* ---- dienstgebiet_container --------------------------------------------*/
#dienstgebiet_container #dienstgebiet_select_wrapper { height: 36px; margin: 0 0px 25px 0; display: flex; align-items: center;
    background: #eee; border-radius: 5px; padding: 0 0 0 10px; }
#dienstgebiet_container #dienstgebiet_select_label { margin: 0 35px 0 15px; padding: 0; }
#dienstgebiet_container #dienstgebiet_select { width: 20%; }

#dienstgebiet_core_panel .editor_save { margin: 0 20px 0 auto; }
#dienstgebiet_core_panel .core_content { padding: 2.5em 4em 0 2.5em; border: 1px solid #aaa; }
#dienstgebiet_core_panel .accordion_header_label_1 .id_text { margin-right: 10px; }

#dienstgebiet_contracts_panel #contracts_content { position: relative; overflow: hidden; padding: 2px; }
#dienstgebiet_contracts_panel .toolbar { width: calc(100% - 19px); height: 35px; background: #eee; border-radius: 4px;
     margin: 2px 0 1px 0; padding: 15px 0 0 20px; }
#dienstgebiet_contracts_panel .service_box.selected { border: 4px solid #000; line-height: 11px; width: 74px; }
#dienstgebiet_contracts_panel #contract_table .customer { width: 400px; padding: 0 0 0 5px; }
#dienstgebiet_contracts_panel #contract_table .customer .column_1 { width: 330px; }
#dienstgebiet_contracts_panel #contract_table .customer .column_2 { padding: 4px 0 0 0 }
#dienstgebiet_contracts_panel #contract_table .customer .column_2 .button_wrapper { background: #d0d0d0; padding: 3px; border-radius: 3px; }
#dienstgebiet_contracts_panel #contract_table .customer .column_2 .approval_wrapper .form_button { height: 22px; line-height: 22px; width: 22px; margin-top: 2px }
#dienstgebiet_contracts_panel #contract_table .customer .column_2 .approval_wrapper .form_button:first-child { margin-right: 2px; }
#dienstgebiet_contracts_panel #contract_table .customer .column_2 .service_new { width: 100%; height: 22px; line-height: 22px; margin: 0; }
#dienstgebiet_contracts_panel #contract_table td.customer { padding: 0 0 0 5px; vertical-align: top; line-height: 18px; background: #eee; }
#dienstgebiet_contracts_panel #contract_table .customer_name { margin: 3px 0 0 0; height: 20px; line-height: 20px; }
#dienstgebiet_contracts_panel #contract_table .contract_sticker_wrapper {  height: 20px; line-height: 20px; display: flex; }
#dienstgebiet_contracts_panel #contract_table .contract_sticker_wrapper div { display: inline-block; height: 17px; line-height: 17px;
    margin: 2px 0 0 0; box-sizing: border-box; }
#dienstgebiet_contracts_panel #contract_table .contract_sticker_wrapper .contract_sticker { margin: 2px 0 0 10px; padding: 0 10px;
    border: none; border-radius: 5px; width: 250px; }
#dienstgebiet_contracts_panel #contract_table .confirmation_info { margin: 0 0 3px 0; }
#dienstgebiet_contracts_panel #contract_table .confirmation_document_icon { margin: 0 0 0 5px; }
#dienstgebiet_contracts_panel #contract_table td.services { padding: 3px 2px 4px 2px; vertical-align: top; }

#dienstgebiet_contracts_panel .document_panel { color: #777; width: auto; height: auto; max-height: 500px; overflow: auto;
    border: 1px solid #ccc; border-radius: 4px; padding: 10px 20px; }
#dienstgebiet_contracts_panel #show_documents_button { margin: 0 5px 0 auto; width: 100px; height: 24px; line-height: 22px; }
#dienstgebiet_contracts_panel #upload_document_button { margin: 0 20px 0 0; width: 24px; height: 24px; line-height: 24px;  }

/* ---- kv_entities_view ---------------------------------------------*/
#kv_entities_view .accordion_header_icon { border-radius: 4px; color:#444;  }
#kv_entities_view .ui-accordion-header-active .accordion_header_icon { color: #fff; }
#kv_entities_view .ui-accordion-header-active .accordion_header_icon.unsaved, #kv_entities_view .accordion_header_icon.unsaved {
    color: red; background: transparent; }
#kv_entities_view div:not(.contacts_table) tbody tr:nth-child(even) { background: rgba(0, 89, 93, 0.1); }
#kv_entities_view div:not(.contacts_table) tbody tr:nth-child(odd) { background: #f5f5f5 }

#kv_entities_view .inline_table thead th  { font-weight: bold;
    border-left: 1px solid #ddd; border-right: 1px solid #ddd; border-bottom: 1px solid #ddd; border-top: 1px solid #f5f5f5; }
#kv_entities_view .inline_table th a { font-weight: bold; }

/*#kv_entities_view tbody tr td { border:1px solid #ccc; }*/
/*#kv_entities_view tbody tr td:first-child { border-left: 1px solid transparent; }*/
/*#kv_entities_view tbody tr td:last-child { border-right: 1px solid transparent; }*/
#kv_entities_view .inline_table thead * { vertical-align:middle !important; }

/* ---- common for all kv_entities panels ----------------------------------*/
.kv_entity_content { padding: 0 !important; margin: 0 !important; overflow: hidden !important; position: relative; }

.kv_entity_content table .id { width: 4%; text-align: right; padding-left: 10px; vertical-align: top; }
.kv_entity_content table .name { width: 30%; text-align:left; padding-left: 10px; vertical-align: top; }
.kv_entity_content table .contacts { width: 30%; text-align: left; padding-left:10px; vertical-align: top; }
.kv_entity_content table .contacts ul { margin: 0; padding: 0; }
.kv_entity_content table .contacts ul>li:not(:first-child) { margin: -5px 0 0 0; }
.kv_entity_content .ui-accordion .ui-accordion-content { width: 100%; }

/* ---- kv_dienstgebiete_panel -------------------------------------------*/
.kv_entity_content.dienstgebiete_content table .name { width: 50%; text-align:left; padding-left: 10px; vertical-align: top; }
.kv_entity_content.dienstgebiete_content table .token { width: 5%; text-align:left; padding-left: 10px; vertical-align: top; }

/* ---- kv_vereinigungen_panel -------------------------------------------*/
.kv_entity_content.vereinigungen_content table .address { width: 30%; text-align:left; padding-left: 10px; vertical-align: top; white-space: pre; }

/* ---- kv_leitstellen_panel -------------------------------------------*/
.kv_entity_content.leitstellen_content table .comment { width: 30%; text-align:left; padding-left: 10px; vertical-align: top; white-space: pre; }


.kv_editor_content .column_1 { width: 8%; }
.kv_editor_content .column_2 { width:20%; margin:0 0 0 1em; }
.kv_editor_content .column_3 { width:65%; margin: 0 20px 0 auto; float:right }

.editor_save.unsaved { color: #ee3956; background: #ffed00 !important; }
.editor_save.unsaved:hover { color: #ffed00; background: #ee3956 !important; }

.kv_entity_content .row_editor { padding: 0 }
.kv_entity_content .kv_editor_header { border-bottom: 1px solid #aaa; justify-content: flex-end; }
.kv_entity_content .kv_editor_header .icon_button { font-size: 115%; height: 26px; line-height: 26px; width: 26px; margin: 10px 20px 5px 0; }
.kv_editor_content { padding: 10px 0 10px 20px; max-width: calc(100% - 20px); }
.kv_editor_content #contacts_header { margin: 0 0 5px 0; pointer-events: auto; }
.kv_editor_content .contact_assign_cell { float: right; }
.kv_editor_content #contact_assign { margin: 0 0 0 20px; font-size: 120%; color: #777; width: 46px; height: 24px; line-height: 23px; }
.kv_editor_content #contact_assign:hover:not(.disabled) { background: #00aeb8; color: #fff; }
.kv_editor_content #contact_assign.disabled { color: #ccc; }

.kv_editor_content #contacts_table th { height: 24px; padding: 2px 3px 2px 10px; }
.kv_editor_content #contacts_table thead th { vertical-align: middle; background-color: #ddd; border-color: #aaa; }
.kv_editor_content #contacts_table th, .kv_editor_content th a { font-weight:normal; color: #777; }
.kv_editor_content #contacts_table .fullName { width: 25%; text-align: left; padding-left: 10px; }
.kv_editor_content #contacts_table .phoneNumber { width: 20%; text-align: left; padding-left: 10px; }
.kv_editor_content #contacts_table .faxNumber { width: 15%; text-align: left; padding-left: 10px; }
.kv_editor_content #contacts_table .emailAddress { width: 20%; text-align:left; padding-left: 10px; }
.kv_editor_content #contacts_table .chains { width: 10%; cursor: pointer; text-align: center; }
.kv_editor_content #contacts_table td.chains { padding: 3px 4px 0 4px; }
.kv_editor_content #contacts_table .chains span { padding: 1px 12px; border-radius: 4px; border: 1px solid #aaa;
    background: #eee; color: #777; font-size: 100%; }
.kv_editor_content #contacts_table .chains span:hover { background: #00aeb8; color: #fff; }
.kv_editor_content #contacts_table .chain_button { padding: 2px 12px; margin: 0 15px 0 0; background: #eee; color: #777; font-size: 100%;
    border-radius: 4px; border: 1px solid #aaa; }
.kv_editor_content #contacts_table .chain_button:hover { color: #777; background: #70f7ff; }
.kv_editor_content #contacts_table .contact_assign_button { width: 20%; margin: 0 0 0 5px; height: 28px; line-height: 28px; }
.kv_editor_content #contacts_table .chain_button.enabled { background: #419636 !important; color: #ffff00 !important; font-weight: bold !important; }
.kv_editor_content #contacts_table .edit { width: 4%; cursor: pointer; }
.kv_editor_content #contacts_table .remove { width: 4%; cursor: pointer; }
.kv_editor_content #contacts_table td.remove { padding: 2px; text-align: center; }
.kv_entity_content tbody .remove .icon_button { vertical-align: text-bottom; padding: 0; }
.kv_entity_content tbody .remove .icon_button:hover { border-radius: 50%; }
.kv_editor_content #contacts_table td.edit { padding: 2px 4px; }
.kv_editor_content #contacts_table tbody tr td:first-child  { border-left: 1px solid #ccc; }
.kv_editor_content #contacts_table tbody tr td:last-child  { border-right: 1px solid #ccc; }
.kv_editor_content #contacts_table tbody tr { background: #fff !important; }

/* ---- chain_dialog -----------------------------------------------------*/
#chain_dialog { padding: 20px 40px; z-index: 99; }
#chain_dialog_header { margin: 20px 0 40px 0; }
#chain_dialog_content { margin: 20px 0; }

/* ---- accounts_view -----------------------------------------------------*/

#accounts_view #accounts_header, #accounts_view #accounts_paginator { width: calc(100% - 30px); height: auto; background: #eee; border-radius: 4px;
    margin: 0; padding: 15px 0 0 20px; }
#accounts_view #accounts_header [class^="icon-"], #accounts_header [class*=" icon-"] { font-size: 120%; min-width: 18px; }
#accounts_view #accounts_header #accounts_refresh { padding: 5px 5px 0px 5px; margin: 0 0 13px 0; }
#accounts_view #accounts_header #accounts_states_label { margin: 2px 10px 0 50px; }
#accounts_view #accounts_header #accounts_states { border: 1px solid #ccc; border-radius: 4px; background: #f5f5f5; height: 28px; overflow: hidden; }
#accounts_view #accounts_header #accounts_states .form_checkbox { background: transparent; border: none; margin: 2px;
    text-overflow: ellipsis; overflow: hidden; white-space: nowrap; font-size: 90%; color: #777; }
#accounts_view #accounts_header #accounts_filter_label { margin: 2px 10px 0 40px }
#accounts_view #accounts_header #accounts_filter { width: auto; }
#accounts_view #accounts_header #accounts_filter span.search { display: none; }
#accounts_view #accounts_header .backgrid-filter.form-search { margin: initial; display: inherit; }
#accounts_view #accounts_header .backgrid-filter input[type="search"] { padding: 3px 10px 2px 10px;  font-size: 100%; }
#accounts_view #accounts_header #service_charge_button { margin: 0; width: auto; line-height: 25px; padding: 0 10px; }
#accounts_view #accounts_header #date_in_charged_month { margin: 0 30px 0 5px; text-align: center; width: 6em; }
#accounts_view #accounts_header #invoice_button { margin: 0 20px 13px 20px; padding: 0 10px; float: right;
    width: auto; min-width: 8em; line-height: 25px; }
#accounts_view #accounts_header .form_button:hover { color: #c7fcff; background: #00aeb8; }

#accounts_view #accounts_paginator { margin: 3px 0; }
#accounts_view #accounts_paginator #paginator_info { font-size: 90%; color: #777; width: auto; margin: 0 0 0 30px; padding: 4px 0 0 0; }
#accounts_view #accounts_paginator #page_size_wrapper { float: right; margin: 0 20px 0 auto; font-size: 90%; }
#accounts_view #accounts_paginator #page_size { width: 100px; margin: 0 0 0 10px; }

#accounts_view { height: 100%; margin: 0 10px 0 0; overflow-y: hidden; }
#accounts_view #accounts_search { width: 300px; }
#accounts_view .header { font-size: 110%; padding: 10px 0 0 0; display: inline-block; }
#accounts_view #accounts_table {}
#accounts_view #accounts_table tbody tr:nth-child(even) { background-color: rgba( 0, 174, 184, 0.1 ); }
#accounts_view #accounts_table tbody tr:nth-child(odd) { background-color: #f5f5f5; }
#accounts_view #accounts_table thead th  { font-size: 12px; font-weight: normal; color: #a9a9a9;
    height: 35px; line-height: 23px; cursor: default; }
#accounts_view #accounts_table thead th, #accounts_view #accounts_table thead th a { color: #777 !important; }
#accounts_view #accounts_table td { color: #777; }
#accounts_view #accounts_table .type { width: 150px; }
#accounts_view #accounts_table .statusString { width: 120px; }
#accounts_view #accounts_table .numberFormatted { width: 10%; }
#accounts_view #accounts_table .creditorName { width: 250px; }
#accounts_view #accounts_table .debitorName { width: 250px; }
#accounts_view #accounts_table .missionId { width: 70px; }
#accounts_view #accounts_table .billingDate { width: 120px; }
#accounts_view #accounts_table .fromDate { width: 100px; }
#accounts_view #accounts_table .toDate { width: 100px; }
#accounts_view #accounts_table .icon_button { font-size: 110%;  text-align: center; }

#account_dialog { padding: 40px 0 0 0; }
#account_dialog .column_1 { width: 200px }
#account_dialog .column_2 { width: 200px; margin: 0 3em 0 1em; }
#account_dialog .column_3 { width: 150px }
#account_dialog .column_4 { width: 75px; margin: 0 0 0 1em; }

/* ---- Datev view ----------------------------------------------------*/
#datev_view .header { margin: 20px 0 0px 0px; background: #ddd; padding: 0px 20px; border-radius: 4px; color: #777;
    box-sizing: border-box; height: 26px; line-height: 26px; font-size: 110%; font-weight: bold; }
#datev_view .content { height: 60px; background: #eee; border-radius: 4px;
    margin: 0 0 10px 0; padding: 15px 0 5px 20px; box-sizing: border-box;}
#datev_view .form_button[id$="_export"] { padding: 0 10px; margin: 0 10px 0 0; }
#datev_view .label_1 { width: 3em; text-align: center; }
#datev_view .history_button { padding: 0 10px; margin: 0 20px 0 auto; }
#datev_view .datev_document_panel { color: #777; width: 30em; height: 500px; overflow: auto;
    border: 1px solid #ccc; border-radius: 4px; padding: 5px 10px; }
#datev_view .datev_document_panel .document_list a span { margin: 0 10px 0 0; }
/*#datev_view .document_link:hover { color: #00aeb8; cursor: pointer; }*/
/*#datev_view .document_link a:focus { color: #00aeb8; text-decoration: underline; cursor: pointer; }*/
#datev_view .form_checkbox { margin: 0 0 0 50px; }


/* ---- tasklist_view -------------------------------------------------*/
#tasklist_view #tasklist_content { display:flex; height:100%; position: relative; }
#tasklist_view #tasklist_options { width: 295px; height: auto; background: #eee; margin: 0 0 0 5px; padding: 20px 5px 10px 20px; box-sizing: border-box; }
#tasklist_view #tasklist_options .row_3 { margin: 0 0 5px 0; }
#tasklist_view #tasklist_options .row_8, #tasklist_view #tasklist_options .row_9 { height: 16px; }
#tasklist_view #tasklist_options .row_9 { margin-bottom: 15px; }
#tasklist_view #tasklist_options .form_checkbox { border: none; background: inherit; height: 20px; }
#tasklist_view #tasklist_options .form_label { width: 80px; margin: 0 0 0 10px; text-align: left; }
#tasklist_view #tasklist_options .person_filter { width: calc(100% - 100px); }
#tasklist_view #tasklist_counter span:nth-child(2) { font-weight: normal; padding: 0 0 0 5px; }
#tasklist_view #tasklist_mission_checkbox_master { float: right; margin: 5px 10px 0px 10px; }
#tasklist_view #tasklist_mission_filter_label { width: 80%; height: auto; padding: 0; }
#tasklist_view #tasklist_contract_filter_label {width: auto; }
#tasklist_view #tasklist_mission_tasks { clear: both; }

#tasklist_view #tasklist_table { width: calc(100% - 300px); }
#tasklist_view #tasklist_table td { vertical-align: top; }
#tasklist_view #tasklist_table td:first-child { vertical-align: top; }
#tasklist_view #tasklist_table #mission_document_table td { vertical-align: bottom; }
#tasklist_view #tasklist_table .id_text { font-size: 90%; font-weight: normal;}
#tasklist_view #tasklist_table .description { width: 200px; }
#tasklist_view #tasklist_table .description .form_button { height: 19px; line-height: 20px; width: 20px;
    margin: 3px 5px 0 auto; float: right; }
#tasklist_view #tasklist_table .description .form_button.disabled  { color: #ffff00; background: #419636; }
#tasklist_view #tasklist_table .description .form_button>span { padding: 1px; margin: 0; float: none; }
#tasklist_view #tasklist_table .subject { width: 150px; }
#tasklist_view #tasklist_table .subject .activity_sticker, #tasklist_view #tasklist_table .subject .contract_sticker {
    text-align: center; border-radius: 3px; }
#tasklist_view #tasklist_table .spanInfo { width: 250px; }
#tasklist_view #tasklist_table .contracts { width: 15%; }
#tasklist_view #tasklist_table .candidate { width: 15%; }
#tasklist_view #tasklist_table .dienstgebiet { width: 15%; }


/* ---- settings_dialog -----------------------------------------------*/
#settings_dialog { padding: 30px; }
#settings_dialog #cache input { width: 100px; margin: 0 10px 0 0; }
#settings_dialog #cache .form_label { margin: 0 10px 0 0; }


/* ---- error_dialog ---------------------------------------------------*/
#error_dialog { max-height: 500px; overflow: auto; }
#error_dialog #error_dialog_content { width: 100%; }
#error_dialog #error_details {  }
#error_dialog #apology { margin: 10px 0; }
#error_dialog #error_text { color: red; font-size: 15px; margin: 20px 10px; }
#error_dialog #error_location { margin: 20px 10px; }
#error_dialog .form_row { margin: 0; }
#error_dialog .column_1 { width: 70%; }
#error_dialog .column_2 { width: 30%; }
#error_dialog #error_description_label { height: auto; white-space: normal; line-height: 1.5em; }
#error_dialog #error_description { width: 100%; line-height: 2em; }
#error_dialog #send_report { margin: 0 0 0 auto; min-width: 150px; max-width: 200px; }
#error_dialog #toggle_details { margin: 20px 10px 10px 0; }
#error_dialog #error_details { white-space: pre; display: block; font-family: monospace; line-height: 11px;
    background: #f5f5f5; color: #000;
    padding: 5px 15px; margin: 10px 0; max-height: 500px; max-width: 775px; overflow: auto; }
#error_dialog #error_details.hidden { display: none; }
#error_dialog #message_sent { float: right; margin: 0 20px 0 auto; }


/*---- message_box --------------------------------------------------------*/
.message_box .report_item { display: block; line-height: 32px; }
.message_box .report_item .report_icon * { padding: 3px; }

/*---- dienstgebiet_contracts_panel----------------------------------------*/
.form_button.is-disabled {
    opacity: .5;
    pointer-events: none;
    cursor: not-allowed;
}
