#container {
    width: 100%;
    padding-top: 67px
}

.dropdown.dropdown-hover:hover .dropdown-menu {
    display: block;
    margin-top: 0;
}

/* .add-to-list {
    width: 141px;
    font-size: 82%;
    padding: 2px;
    border: #bbb solid 1px;
    color: #ccc;
} */

#templates-table .select-template .fa-minus {
    display: none;
}

#templates-table thead th, #selection-table thead th {
    padding: 0;
    border: none;
}

.dropdown-max-height {
    overflow: auto;
    max-height: calc(100vh - 490px);
}

input.form-control[type=checkbox] {
    display: inline;
    width: initial;
}

.compare-empty .filter-value-field, .compare-empty .filter-value-caption {
    display: none !important;
}

.profile-items {
    margin: 0;
}

.filter-value-caption {
    border: #bbb solid 1px;
    display: block;
    padding: 7px 15px;
    border-radius: 5px;
}

.compare-empty:after {
    content: '- -';
    width: 100%;
    background: #f1f1f1;
    display: block;
    text-align: center;
    margin-bottom: 15px;
    border-radius: 5px;
    border: #bbb solid 1px;
    padding: 6px 0;
    color: #aaa;
}

.compare-number .filter-value:not(.compare-number-field) {
    display: none;
}

.text-big {
    font-size: 200%;
    vertical-align: sub;
}

.protected {
    color: #bbb;
}

.dropup .dropdown-submenu:hover>.dropdown-menu {
    display: inline-table;
}

.protected .template-excerpt:before {
    content: "\f023 ";
    font-family: "FontAwesome";
    color: red;
    float: left;
    margin-right: 8px;
    font-size: 18px;
    line-height: 1;
}

.inline-block {
    display: inline-block;
}

.mce-textbox {
    font-family: monospace !important;
}

.template-container {
    display: flex;
    flex: 1;
    overflow-y: scroll;
    scrollbar-width: thin;
}

.selection-container {
    border-bottom: gray solid 1px;
    max-height: 50%;
    overflow-y: scroll;
    scrollbar-width: thin;
}

#selection-table .select-template .fa-plus {
    display: none;
}

#selection-table .ellipsis {
    text-overflow: clip;
}

#heading-table .btn-group-success {
    margin-right: 8px;
}

.not-shown {
    display: none;
}

.d-block {
    display: block;
}

.sort-handle {
    float: right;
    cursor: ns-resize;
}

.selected-template {
    overflow: hidden;
    cursor: move;
}

.toggle-favorite .fa-star {
    color: orange;
}

.sort-handle .fa {
    color: #888;
    margin-right: 2px;
}

.btn-group-success .btn-default.active {
    background-image: linear-gradient(to bottom, #5cb85c 0, #419641 100%);
    color: white;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, .2)
}

.btn-group-success .btn-default.active:hover {
    background-color: #419641;
    background-position: 0 -15px;
}

.table-nobreak td.ellipsis {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.add-to-list option {
    color: black;
    font-size: 100%;
}

.menu-form-item {
    padding: 0 20px;
}

.btn-white {
    background: white;
    border: #ccc solid 1px;
}

.clear-right {
    clear: right;
}

.clear-left {
    clear: left;
}

.pull-menu-left {
    left: unset;
    right: 0;
}

.flex-end {
    justify-content: end !important;
}

.event-item {
    overflow: hidden;
    white-space: nowrap;
}

.event-item .badge {
    position: absolute;
    right: 10px;
    min-width: 28px;
}

label .field-description {
    font-weight: 400;
    font-style: italic;
    display: block;
    color: gray;
}

.alternative-nav button {
    margin-left: 5px !important;
}

.alternative-nav .btn-success:hover {
    background: #449d44 !important;
}

.table-links td a {
    display: block;
    padding: 8px 0;
    margin: -8px 0;
    color: black;
}

.table-links td a:hover {
    text-decoration: none;
}

.livesearch-dropdown {
    max-width: calc(100% - 30px);
    overflow-y: auto;
    overflow-x: hidden;
    margin-left: 15px;
}

.x-small {
    font-size: 75%
}

.cat-filter {
    border-bottom: #bbb solid 1px;
    padding-bottom: 15px;
}

.cat-field {
    overflow: hidden;
    font-size: 90%;
    white-space: nowrap;
}

.number {
    display: inline-block;
    text-align: center;
    color: white;
    margin-right: 4px;
    position: relative;
    z-index: 1;
    font-size: 12px;
    width: 20px;
    font-weight: 700;
}

.number:before {
    z-index: -1;
    left: 0;
    top: -4px;
    content: " ";
    position: absolute;
    width: 20px;
    height: 20px;
    background: #2e6da4;
    border-radius: 50%;
}

.micro-number {
    width: 22px !important;
    height: 23px;
    padding: 0;
    text-align: center;
    -moz-appearance: textfield;
}

.micro-number::-webkit-inner-spin-button, .micro-number::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.attachment-row.attachment-large {
    padding-left: 30px;
    position: relative;
}

.attachment-row.attachment-small .fa {
    margin-right: 8px;
}

.attachment-row.attachment-large .fa {
    position: absolute;
    left: 0;
    top: 8px;
    font-size: 25px;
}

.filter-label {
    width: 250px;
}

.filter-control {
    padding: 35px 0 !important;
    position: relative;
}

.filter-control .combination {
    width: 80px;
    z-index: 1000;
    position: absolute;
    left: 0;
    bottom: -15px;
}

.filter-table tbody tr:last-child .combination {
    display: none;
}

#preview_panel {
    padding: 0 15px;
}

#preview_panel>div {
    padding: 0
}

.preview-field {
    font-size: 82%;
    padding: 3px 10px;
    background: #eee;
    margin: 2px;
    border-radius: 4px;
}

.text-white {
    color: white !important
}

.text-orange {
    color: orange;
}

.query-item .badge {
    margin-right: 10px;
}

/* label.btn {
    margin-bottom: 16px;
} */

.checkbox-label {
    font-weight: normal;
    margin: 0;
    cursor: pointer;
}

.no-break {
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    border: none;
}

.no-break:after {
    border-bottom: #ddd solid 1px;
    width: 100%;
}

.no-break li, .no-break a {
    float: none;
    display: inline-block;
}

.float-right {
    float: right;
}

.current-group {
    font-weight: 700;
}

.current-group:before {
    font-family: "FontAwesome";
    content: "\f054 ";
    margin-right: 5px;
}

#quickCase .modal-body label {
    font-size: 82%;
    font-weight: 400;
}

#quickCase .modal-body .input-group-addon {
    padding: 0 10px;
}

#quickCase .modal-body .input-group-addon input {
    height: auto !important;
}

#quickCase .modal-body .form-group {
    margin-bottom: 3px;
}

#quickCase .modal-body .input-group input, #quickCase .modal-body .form-group input, #quickCase .modal-body .form-group select {
    margin: 0;
    height: 30px;
    padding: 5px 10px;
    font-size: 12px;
    line-height: 1.5;
}

#quickCase .modal-body .checkbox input {
    top: 2px;
    left: 10px;
}

#status-indicator {
    position: fixed;
    top: 0;
    left: 50%;
    margin-left: -100px;
    width: 200px;
    z-index: 2001;
    border-radius: 0 0 4px 4px;
    padding: 10px 40px;
    color: white;
    text-align: center;
    font-weight: 700;
}

#status-indicator.success {
    background-image: linear-gradient(to bottom, #5cb85c 0, #419641 100%);
}

#status-indicator.danger {
    background-image: linear-gradient(to bottom, #d9534f 0, #c12e2a 100%);
}

#templates {
    z-index: 2001;
}

#quickCase {
    z-index: 2000;
}

#selected-keywords {
    height: auto;
    padding: 6px 6px 0;
    min-height: 30px;
}

.td-date {
    display: inline-block;
    background: #555;
    padding: 2px;
    text-align: center;
    font-size: 12px;
}

.td-date .day {
    display: inline-block;
    background: white;
    padding: 0 4px;
    font-size: 12px;
    font-weight: bold
}

.td-date .month {
    display: inline-block;
    color: white;
    padding: 0 4px;
    font-size: 9px;
    text-transform: uppercase;
    vertical-align: text-bottom;
}

.td-date .time {
    display: inline-block;
    background: #ddd;
    padding: 2px 4px 0px;
    font-size: 9px;
    vertical-align: text-bottom;
}

.editing {
    background: white;
    padding: 5px 20px;
}

.modal-footer {
    background: #f1f1f1;
}

.transparent {
    background: transparent;
}

.livesearch-autocomplete {
    color: #bbb;
}

.livesearch-active {
    background: #e5e5e5;
}

#dist-lists .list-group-item {
    cursor: pointer;
}

#dist-lists .list-group-item.bg-warning .list-title {
    font-weight: 700;
}

.keyword-tag {
    background: #eee;
    border: #bbb solid 1px;
    font-size: 10px;
    border-radius: 3px;
    display: inline-block;
    color: black;
    margin-right: 5px;
    padding: 3px 20px 3px 8px;
    position: relative;
    overflow: hidden;
    white-space: nowrap;
    width: 31.9%;
}

.keyword-tag .close-tag {
    position: absolute;
    top: 3px;
    right: 0;
    cursor: pointer;
    background: #eee;
    width: 20px;
    text-align: center;
    padding: 2px 0;
}

.nav-bubble {
    margin-left: 15px;
}

.nav-bubble span {
    background: white;
    height: 20px;
    width: 20px;
    padding: 3px;
    color: black;
    border-radius: 50%;
}

/* #keyword-selector {
    font-size: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    height: 30px;
    width: 30px;
    border: #ccc solid 1px;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    background: #eee url(/img/chevron-down.svg) no-repeat 9px 11px;
    background-size: 12px;
}

#keyword-selector option {
    background: white;
} */

#query-items form.query-panel:first-child .del-query, .query-panel .filter-row:first-child .del-filter {
    visibility: hidden;
}

.monospace {
    font-family: "Courier New", Courier, monospace;
    font-size: 15px !important
}

.float-left {
    float: left;
}

.width-auto {
    width: auto;
}

.icon-left {
    float: left;
    margin-top: 3px;
}

.icon-right {
    float: right;
    margin-top: 3px;
}

.icon-green {
    color: #00aa00
}

.icon-yellow {
    color: #EBA31F
}

.icon-red {
    color: #ff0000
}

.icon-gray {
    color: #888
}

.icon-blue {
    color: #418EC6
}

.icon-small {
    font-size: 16px !important
}

.icon-xsmall {
    font-size: 14px !important;
    vertical-align: inherit
}

.icon-large {
    margin-top: -5px;
    font-size: 22px !important;
}

.icon-xlarge {
    vertical-align: sub;
    font-size: 25px !important;
    color: #337ab7
}

.bg-warning {
    background-color: #fcf8e3 !important
}

.btn-border {
    border: #ccc solid 1px;
    display: block;
    padding: 7px 15px;
    border-radius: 5px;
}

.bg-light {
    background-color: #f1f1f1 !important
}

.btn-dark {
    background-image: linear-gradient(to bottom, #888 0, #666 100%);
    color: white;
}

.btn-dark:hover {
    background: #666;
    color: white;
}

.label-light {
    background-color: #eee;
    color: gray;
    box-shadow: 0px 0px 0px 1px gray inset;
}

/*.panel-body div:last-child, .panel-body ul:last-child {margin-bottom: 0 !important}*/

.option {
    margin-bottom: 15px
}

.modal {
    text-align: center;
    padding: 0 !important;
}

.strong {
    font-weight: bold;
    font-size: 140%;
}

.font-weight-normal th {
    font-weight: 400
}

.pos-relative {
    position: relative;
}

.stat-title {
    position: relative;
    text-align: center;
}

.pb-0 {
    padding-bottom: 0;
}

.pb-5 {
    padding-bottom: 5px;
}

.mt-2 {
    margin-top: 2px !important;
}

.mt-15 {
    margin-top: 15px;
}

.m-0 {
    margin: 0 !important;
}

.mb-0 {
    margin-bottom: 0;
}

.mb-5 {
    margin-bottom: 5px;
}

.mb-10 {
    margin-bottom: 10px;
}

.mb-15 {
    margin-bottom: 15px;
}

.mb-20 {
    margin-bottom: 20px;
}

.mr-5 {
    margin-right: 5px;
}

.mr-15 {
    margin-right: 15px;
}

.bold {
    font-weight: bold !important;
}

.bg-striped {
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23aeaeae' fill-opacity='0.4' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E");
}

.border-bottom {
    border-bottom: gray solid 1px;
}

.well {
    background: #fff;
}

.field-inline {
    display: inline-block;
}

.field-inline span {
    margin-right: 5px;
}

.field-inline span:empty {
    margin: 0
}

.line-break {
    display: table;
}

.bg-disabled {
    background: #f1f1f1;
    color: #f1f1f1;
    border: #bbb solid 1px;
}

.table-fixed {
    table-layout: fixed;
}

.table-adjust td {
    width: 1%;
    white-space: nowrap;
}

.table-adjust tr td:last-child {
    width: auto;
}

.table-fixed td, table.v-center td {
    vertical-align: middle !important;
}

.mb-30 {
    margin-bottom: 30px;
}

.text-center {
    text-align: center;
}

#participant-slots .participant-table table tr th:first-child, #participant-slots .participant-table table tr td:first-child {
    display: none;
}

#newsletter_group_members_container .pagination {
    margin: 0;
}

/* update info */

#version-updates {
    position: fixed;
    z-index: 2000;
    top: 0;
    left: 50%;
    width: 200px;
    margin-left: -100px;
    padding: 6px 10px;
    border-radius: 0 0 4px 4px;
    text-align: center;
    cursor: pointer;
    font-weight: bold
}

.offside {
    position: absolute;
    left: -9999px;
}

/* nav */

.nav>li>a {
    padding: 15px 12px
}

.navbar .fa {
    margin-right: 6px;
    min-width: 15px;
    text-align: center
}

@media all and (max-width:768px) {
    #main-navbar .nav, #main-navbar .nav>li {
        display: block;
        float: left
    }
    .quick-search {
        float: right
    }
    .navbar-nav, .navbar-right {
        margin: 0
    }
    .nav-toggle {
        margin: 10px
    }
    .nav-toggle .fa {
        margin: 0
    }
    .navbar-collapse, .navbar-collapse.in {
        max-height: unset !important;
        overflow: visible
    }
    .navbar-nav .open .dropdown-menu {
        position: absolute;
        background-color: white;
    }
    .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
        background: #ddd;
    }
    .dropdown-menu {
        box-shadow: 0 6px 12px rgba(0, 0, 0, .175) !important
    }
    .navbar-inverse .navbar-nav .open .dropdown-menu>li>a {
        color: black;
    }
    .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover {
        background: #eee;
        color: black;
    }
}

.modal:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle;
    margin-right: -4px;
}

.modal-dialog {
    display: inline-block;
    text-align: left;
    vertical-align: middle;
}

.modal-dialog.modal-large {
    width: 98vw;
    margin: 0;
    padding: 0;
}

.modal-dialog.modal-large iframe {
    height: calc(100vh - 50px) !important;
}

.modal-body.max-height {
    height: 476px;
    overflow-y: auto;
}

.modal-content.modal-large {
    height: auto;
    min-height: 100%;
    border-radius: 0;
}

.panel-heading h4 a:hover {
    text-decoration: none;
    color: #337ab7
}

.user-picker table td {
    vertical-align: middle !important;
}

.user-picker select {
    margin: 20px 15px 0 15px;
    width: auto
}

.v-resize {
    cursor: ns-resize;
}

#document_choose {
    height: 70vh
}

#showExplorer {
    height: 100vh;
    width: 100vw;
}

#explorer {
    width: 100%;
    height: calc(100vh - 130px);
    border: #bbb solid 1px;
}

#explorer_attachments {
    height: 250px;
    overflow-y: auto;
    position: relative;
}

.explorer_no_selection {
    width: 120px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.icon-big {
    font-size: 180%
}

tr.showContact:hover {
    background: #dff0d8 !important
}

#showContact .group-pane {
    min-height: 350px;
    max-height: 60vh;
    overflow-y: auto;
    border: #cfcfcf solid 1px;
    border-top: none;
    padding-top: 15px;
}

.small-heading {
    padding: 5px 15px 0
}

.small-body {
    padding: 5px 15px
}

.glyphicon-spin {
    -webkit-animation: spin 1000ms infinite linear;
    animation: spin 1000ms infinite linear;
}

.column-text-2 {
    -webkit-column-count: 2;
    /* Chrome, Safari, Opera */
    -moz-column-count: 2;
    /* Firefox */
    column-count: 2;
    -webkit-column-gap: 20px;
    /* Chrome, Safari, Opera */
    -moz-column-gap: 20px;
    /* Firefox */
    column-gap: 20px;
}

.column-text-2 .checkbox:first-child {
    margin-top: 0
}

.column-text-3 {
    -webkit-column-count: 3;
    /* Chrome, Safari, Opera */
    -moz-column-count: 3;
    /* Firefox */
    column-count: 3;
    -webkit-column-gap: 20px;
    /* Chrome, Safari, Opera */
    -moz-column-gap: 20px;
    /* Firefox */
    column-gap: 20px;
}

.column-text-3 .checkbox:first-child {
    margin-top: 0
}

.bg-success {
    background-color: #dff0d8 !important
}

.bg-info {
    background-color: #d9edf7 !important
}

.bg-danger {
    background: #c12e2a !important;
}

.bg-danger .mce-ico {
    color: white !important;
}

.mce-privacy-enabled .mce-btn-group:last-child {
    float: right;
    border-left: none;
}

.customfield-checkbox {
    text-align: left;
    background: #eee;
    padding: 6px 10px 6px;
    margin: 0;
    border-radius: 4px;
    border: #aaa solid 1px;
    vertical-align: middle;
}

.customfield-checkbox input:checked+span {
    font-weight: 700;
}

span.customfield-checkbox:hover {
    background: #f5f5f5;
}

.customfield-checkbox-grouped {
    border-radius: 0 4px 4px 0;
    background: #f5f5f5;
    border: #ccc solid 1px;
}

/* JQuery UI */

.ui-sortable-helper {
    cursor: ns-resize
}

.ui-state-highlight {
    content: "drop here";
    background-color: #fff;
    border: 1px dashed orange;
    display: block;
    margin: 2px 0 1px;
    padding: 10px 15px;
    height: 41px
}

.drop-hover {
    background: #eee
}

.checkbox-group .btn-default.active, .checkbox-group .btn-default:hover {
    background: #337ab7;
    color: white;
    text-shadow: none;
}

span.btn-sm {
    cursor: pointer
}

.no-bottom-margin {
    margin-bottom: 0
}

tr.hover:hover {
    background: #fcf8e3 !important
}

.pointer {
    cursor: pointer
}

.unstyled, .unstyled:hover {
    color: black;
    text-decoration: none
}

.icon-large {
    float: left;
    margin-right: 10px;
    margin-top: -2px;
}

.hover:hover {
    background: #f1f1f1
}

.form-control-custom {
    height: 34px;
}

th.sort-key:after {
    font-family: 'FontAwesome';
    content: " \f0dc";
    color: #aaa;
    font-size: 90%;
}

td input[type="checkbox"] {
    margin: 0
}

td .customfield-checkbox input[type="checkbox"] {
    margin-top: 4px;
}

.line-dotted {
    border-bottom: #777 dotted 1px;
    margin: 6px 0
}

.badge-success {
    background: #093
}

.badge-primary {
    background: #337ab7
}

.badge-small {
    font-size: 9px;
    vertical-align: text-top;
    font-weight: normal;
}

.badge-medium {
    font-size: 11px;
    vertical-align: text-top;
    font-weight: normal;
}

.blind {
    display: none
}

.explorer-item {
    display: block;
    position: relative;
    padding: 5px 0 5px 27px;
    margin-bottom: 5px;
    border-radius: 4px;
    background: #f1f1f1;
}

.explorer-item::before {
    position: absolute;
    left: 8px;
    top: 4px;
    font-family: "FontAwesome";
    content: "\f016";
}

.remove-explorer-item {
    cursor: pointer;
    position: absolute;
    top: 8px;
    right: 0;
    width: 25px;
    text-align: center;
    background: #f1f1f1;
}

#explorer_target {
    overflow-x: hidden;
    height: 100%;
}

.navbar-inverse .navbar-nav>li>a {
    color: #ffffff
}

.navbar-inverse .navbar-nav>li>a:hover {
    background-image: linear-gradient(to bottom, #080808 0px, #0f0f0f 100%);
    background-repeat: repeat-x;
    box-shadow: 0 3px 9px rgba(0, 0, 0, 0.25) inset;
}

/* form elements */

.btn-file input[type="file"] {
    background: white none repeat scroll 0 0;
    cursor: inherit;
    display: block;
    font-size: 100px;
    min-height: 100%;
    min-width: 100%;
    opacity: 0;
    outline: medium none;
    position: absolute;
    right: 0;
    text-align: right;
    top: 0;
}

.keyword-inactive {
    background: #f5f5f5 !important;
    color: #ccc;
}

.keyword-inactive:before {
    font-family: 'FontAwesome';
    content: '\f05e';
    margin-right: 5px;
}

.ui-autocomplete {
    border-radius: 4px;
    box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
}

.ui-autocomplete a {
    display: block;
    padding: 8px 15px !important;
    border-bottom: #ddd solid 1px;
}

.ui-autocomplete a:hover {
    text-decoration: none;
    background-image: linear-gradient(to bottom, #337ab7 0, #2e6da4 100%) !important;
}

.ui-autocomplete .ui-state-active {
    background-image: linear-gradient(to bottom, #337ab7 0, #2e6da4 100%) !important;
    border: none !important;
    border-bottom: #bbb solid 1px !important;
}

textarea.textarea-small {
    height: 34px
}

.inline {
    display: inline
}

.block {
    display: block
}

.color-circle {
    display: inline-block;
    width: 16px;
    height: 16px;
    border-radius: 8px;
    border: gray solid 1px;
    margin-right: 10px;
    vertical-align: middle
}

#kwcats .list-group-title {
    padding: 8px;
    background: #f5f5f5;
    cursor: pointer;
}

#kwcats .list-group-item {
    padding: 0
}

#kwcats .list-group-content {
    padding: 20px 15px
}

#progress-curtain {
    position: fixed;
    top: 0;
    z-index: 10000;
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0.6);
}

#progress-curtain .panel {
    width: 40%;
    margin: 48vh auto;
}

#progress-curtain .progress {
    background: #eee;
}

#content-preview {
    display: none;
    height: 409px;
    margin-right: 100px;
    position: absolute;
    width: 578px;
    right: 55px;
    top: 54px;
    left: 15px;
    background: white;
    padding: 20px;
    border: #bbb solid 1px;
    border-top-color: rgb(187, 187, 187);
    background: #f6f6f6;
    overflow-y: auto;
    border-top-color: gray;
    z-index: 100;
}

/* spinner */

#curtain {
    position: fixed;
    top: 0;
    z-index: 10000;
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0.6)
}

.spinner {
    width: 100px;
    height: 100px;
    position: relative;
    margin: 0 auto;
    top: 50%;
    transform: translateY(-50%);
}

.svg-qr-code-empty .fa {
    display: inline-block;
    font-size: 35px;
    width: 60px;
    color: #bbb;
    background: #f1f1f1;
    margin: 5px;
    padding: 10px;
}

.svg-qr-code {
    position: relative;
    width: 29%;
    margin: 0 auto;
}

.qrcode {
    width: 220px;
    height: 100%;
    float: left;
    padding-right: 20px;
}

.indicator {
    position: relative;
}

button.indicator:before {
    font-family: 'FontAwesome';
    content: "\f0da";
    position: absolute;
    left: -21px;
    font-size: 24px;
    top: -8px;
    color: gray;
}

.qrcode .inner {
    width: 200px;
    height: 200px;
}

.contact-details {
    float: left;
}

.spinner-box {
    display: none;
    background: #f1f1f1;
    color: #ccc;
    font-size: 100%;
    height: 100px;
    padding-top: 30px;
    width: 100%;
    text-align: center;
}

.double-bounce1, .double-bounce2 {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background-color: #fff;
    opacity: 0.6;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-animation: sk-bounce 2.0s infinite ease-in-out;
    animation: sk-bounce 2.0s infinite ease-in-out;
}

.no-border {
    border: none
}

.no-padding {
    padding: 0
}

.no-radius {
    border-radius: 0
}

.table-ul {
    margin: 0;
    padding: 0 0 0 15px
}

.nowrap {
    white-space: nowrap;
}

/* appointment picker */

.user-picker-table .btn {
    display: inline;
}

.appointment-picker {
    padding: 0;
}

.appointment-picker .day-table {
    border-collapse: collapse;
    border: #ddd solid 1px;
    width: 100%;
    font-size: 82%;
}

.appointment-picker .day-caption {
    padding: 0 5px;
    border-top: #ddd solid 1px;
}

.appointment-picker .hour {
    width: 24px;
    height: 24px;
    border-top: #ccc solid 1px;
    border-bottom: #ccc solid 1px;
}

.appointment-picker .hour:nth-child(2n) {
    border-left: #aaa solid 1px;
    border-right: #aaa dotted 1px;
}

.appointment-picker .hour:last-child {
    border-right: #aaa solid 1px;
}

.appointment-picker .time-row td {
    border-left: #aaa solid 1px;
    padding: 5px 0;
}

.appointment-picker .time-row td:first-child {
    border: none
}

.appointment-picker .time-row td:last-child {
    border-right: #aaa solid 1px;
}

.user-row .day-stat {
    padding: 6px 0 2px;
}

.user-row .day-stat:hover {
    background: white;
    cursor: pointer;
}

.user-row .day-stat-active {
    background: white;
    border: #ddd solid 1px;
    border-bottom: white solid 1px;
}

.user-row-picker>td {
    padding: 0 !important;
}

.occupied {
    background-image: linear-gradient(to bottom, #f2dede 0, #e7c3c3 100%);
    box-shadow: 2px 2px 0 white inset, -2px -2px 0 white inset;
}

.selected, .occupied.case {
    background-image: linear-gradient(to bottom, #dff0d8 0, #c8e5bc 100%);
    box-shadow: 2px 2px 0 white inset, -2px -2px 0 white inset;
}

#event-props textarea {
    resize: vertical;
}

.day-event {
    position: relative;
}

.day-event:after {
    font-family: 'FontAwesome';
    content: ' \f111';
    color: red;
    position: absolute;
    right: -20px
}

.soon-cases-warning {
    border-radius: 4px 4px 0 0;
    background-image: linear-gradient(to bottom, #f2dede 0, #e7c3c3 100%);
}

.soon-cases-warning.active a {
    height: auto;
    animation-name: none;
}

.soon-cases-warning a {
    color: #a94442;
    height: 49px;
    margin-right: 0 !important;
    animation-name: flash;
    animation-duration: 2s;
    animation-iteration-count: 5;
}

.flash {
    animation-name: flash;
    animation-duration: 2s;
    animation-iteration-count: infinite;
}

.red-flash {
    color: red;
    animation-name: red-flash;
    animation-duration: 2s;
    animation-iteration-count: infinite;
}

.txt-flash {
    animation-name: txt-flash;
    animation-duration: 2s;
    animation-iteration-count: infinite;
}

@keyframes txt-flash {
    0% {
        color: #2e6da4;
    }
    50% {
        color: rgba(255, 255, 255, 0);
    }
    100% {
        color: #2e6da4;
    }
}

@keyframes flash {
    0% {
        background-color: #fff;
    }
    50% {
        background-color: rgba(255, 255, 255, 0);
    }
    100% {
        background-color: #fff;
    }
}

@keyframes red-flash {
    0% {
        background-color: #ECCFCF;
    }
    50% {
        background-color: rgba(255, 255, 255, 0);
    }
    100% {
        background-color: #ECCFCF;
    }
}

@keyframes color {
    0% {
        background-color: #fff;
    }
    50% {
        background-color: rgba(255, 255, 255, 0);
    }
    100% {
        background-color: #fff;
    }
}

#footer {
    position: fixed;
    bottom: 4px;
    right: 4px;
    font-size: 9px;
    color: #777
}

.hr {
    border: 0;
    border-top: #ddd solid 1px;
    margin: 10px 0;
    height: 1px
}

.readonly label {
    margin: 5px 0 0;
}

.btn-dropdown {
    padding: 2px 20px;
    display: block;
    text-align: left;
    width: 100%;
    color: black;
}

.btn-dropdown:hover {
    background: #e8e8e8;
    text-decoration: none;
}

.checkbox-line {
    padding: 8px 0;
}

#sidebar .checkbox-line {
    padding: 8px 0;
    padding-left: 0px;
}

#sidebar .contact-group:after {
    font-family: "FontAwesome";
    position: absolute;
    color: #bbb;
    right: 15px;
    content: '\f0c0';
}

#sidebar .list-member:after {
    font-family: "FontAwesome";
    position: absolute;
    color: #bbb;
    right: 15px;
    content: '\f0ca';
}

#sidebar .newsletter_groups_readonly .readonly:after {
    font-family: "FontAwesome";
    position: absolute;
    color: #bbb;
    right: 15px;
    content: '\f003';
}

#sidebar .keyword_readonly:after {
    font-family: "FontAwesome";
    position: absolute;
    color: #bbb;
    right: 15px;
    content: "\f02c";
}

.bg-light-gray {
    background: #f1f1f1;
}

.bg-pdf {
    background: #BE1C2B;
}

.bg-doc, .bg-docx {
    background: #255499;
}

.bg-ppt, .bg-pptx {
    background: red;
}

.checkbox-line span:first-child {
    display: inline-block;
    margin: -5px 8px -5px 0;
    padding: 5px;
    text-align: center;
    width: 25px;
    height: 25px;
}

#print-preview .list-group-item .col-lg-5 {
    white-space: nowrap;
    overflow: hidden;
}

#contacts_table thead, .sticky {
    position: sticky;
    background: white;
    top: 0;
    box-shadow: 0 -2px 0px #bbb inset;
    z-index: 1000;
}

.sticky {
    top: -15px;
}

.contacts .info {
    display: none
}

.contacts .info.empty {
    display: block;
    height: calc(100% - 43px);
    background: #f1f1f1;
    color: #999;
    text-align: center;
}

.contacts .info.empty .contacts-empty {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}

.contacts-empty {
    line-height: 0.8em;
    font-size: 90%;
}

.contacts-empty .btn {
    color: #777;
}

.result-info {
    font-size: 1000%;
    font-weight: bold;
    padding-bottom: 25px;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    color: #ddd;
    font-family: serif;
    font-style: italic;
}

.panel-contacts {
    height: calc(100vh - 84px);
    margin-bottom: 0;
}

.panel-contacts .contacts {
    height: calc(100% - 53px);
    overflow-y: auto;
    overflow-x: hidden;
    padding-top: 0;
    border-top: white solid 15px;
}

.switch {
    margin: 3px 8px 5px 0;
    display: inline-block;
    padding: 5px 0 0 30px;
}

.switch.inside {
    padding: 0;
    margin: 0;
    left: -29px;
    height: 24px;
    width: 24px;
}

.switch>input[type="checkbox"], .actor>input[type="checkbox"] {
    display: none;
}

.switch.inside>label:after {
    left: -6px;
}

.switch>label {
    cursor: pointer;
    height: 0px;
    position: relative;
}

.switch>label::after {
    background: #e8e8e8;
    top: -12px;
    left: -30px;
    content: '';
    height: 25px;
    position: absolute;
    width: 25px;
    border: #bbb solid 1px;
}

.switch>input[type="checkbox"]:checked+label::after {
    font-family: 'FontAwesome';
    color: #3c763d;
    content: "\f00c";
    background: #dff0d8;
    padding-left: 5px;
    font-size: 115%;
}

.actor label {
    margin: 0
}

.actor label .btn-success {
    display: none;
}

.actor label .btn-default {
    display: block;
}

.actor>input[type="checkbox"]:checked+label .btn-success {
    display: block;
}

.actor>input[type="checkbox"]:checked+label .btn-default {
    display: none;
}

label small {
    font-weight: 400;
}

.no-margin {
    margin: 0;
}

#templates .reply .purpose {
    color: #337ab7;
}

#templates .facts .purpose {
    color: #093;
}

.btn-checkbox label, .btn-radio label {
    border: #aaa solid 1px;
    text-align: center;
    background: white;
    border-radius: 3px;
    width: 35px;
    display: inline-block;
    height: 34px;
    padding-top: 7px;
    color: black;
    cursor: pointer;
    margin: 0;
}

.btn-checkbox label:hover, .btn-radio label:hover {
    background: #eee;
}

.btn-checkbox input, .btn-radio input {
    display: none;
}

.btn-checkbox>input[type="checkbox"]:checked+label, .btn-radio>input[type="radio"]:checked+label {
    color: white;
    background: #666;
}

.d-flex {
    display: flex;
}

.flex-wrap {
    flex-wrap: wrap;
}

.flex-column {
    flex-direction: column;
}

.mt-auto {
    margin-top: auto
}

.self-end {
    display: flex;
    align-self: end;
}

.bg-green {
    background-image: linear-gradient(to bottom, #5cb85c 0, #419641 100%)
}

.calendar-selector .owner {
    background: #c8e5bc;
}

.calendar-selector .reader {
    background: #f1f1f1;
}

.bg-white {
    background: white !important;
}

.ui-sortable-placeholder, .ui-state-highlight {
    background: #dff0d8 !important;
    border: #b2dba1 dashed 1px;
}

.ui-sortable-helper {
    background: white !important;
}

.panel-fixed {
    height: calc(100vh - 84px);
    margin-bottom: 0;
}

.panel-fixed .fixed-inner {
    height: calc(100% - 53px);
    overflow-y: auto;
    overflow-x: hidden;
    padding-top: 0;
    border-top: white solid 15px;
}

.panel-fixed .fixed-inner.fixed-footer {
    height: calc(100% - 93px);
}

.panel-fixed .fixed-inner.fixed-footer2 {
    height: calc(100% - 97px);
}

.decent {
    font-weight: 400;
    margin: 0
}

.ok:after {
    content: ' OK';
}

.pt-0 {
    padding-top: 0;
}

.radioblock {
    padding-left: 45px;
    text-indent: -25px;
}

.radioblock input {
    width: 20px;
}

.export-selection .has-children ul {
    margin-top: 15px;
}

#body {
    height: 350px;
}

.li-heading {
    background: #f1f1f1;
    padding: 15px;
}

.event-preview {
    height: 100%;
    padding: 50px;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23333333' fill-opacity='0.5' fill-rule='evenodd'%3E%3Cpath d='M5 0h1L0 6V5zM6 5v1H5z'/%3E%3C/g%3E%3C/svg%3E");
}

.event-preview .row {
    background: white;
}

option:disabled, .checkbox.disabled label {
    color: #aaa;
    text-decoration: line-through;
}

.viewport-height {
    margin-bottom: 0;
    height: calc(100vh - 84px);
    display: flex;
    flex-direction: column;
}

.scroll-panel {
    overflow-y: auto;
    min-height: 50px;
    flex: 1;
}

.viewport-height-50 {
    display: flex;
    flex-direction: column;
    height: calc(50vh - 54px);
    overflow-x: hidden;
}

.flex-grow-1 {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

#mailmerge_preview_container .panel-body {
    height: calc(100% - 43px);
}

#mailmerge_preview {
    background: #eee;
    text-align: center;
    padding: 0;
    position: relative;
    height: 100%;
    background: #2A2A2E;
}

#i_preview body {
    background: #eee;
}

.mailmerge-initial {
    display: none !important;
}

.address-line-container .card-content.active {
    background: #dff0d8;
}

.offscreen {
    position: absolute;
    visibility: hidden;
}

.fa-rotate-45 {
    transform: rotate(45deg);
}

.dropdown-menu {
    min-width: 30px;
}

.dropdown-submenu {
    position: relative;
}

.dropdown-submenu>.dropdown-menu {
    top: 0;
    left: 100%;
    margin-top: -6px;
    margin-left: -1px;
    -webkit-border-radius: 0 6px 6px 6px;
    -moz-border-radius: 0 6px 6px;
    border-radius: 0 6px 6px 6px;
}

.dropdown-submenu:hover>.dropdown-menu {
    display: block;
}

.dropdown-submenu>a:after {
    display: block;
    content: " ";
    float: right;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
    border-width: 5px 0 5px 5px;
    border-left-color: #555;
    margin-top: 5px;
    margin-right: -10px;
}

.dropdown-submenu:hover>a:after {
    border-left-color: #fff;
}

.dropdown-submenu.pull-left {
    float: none;
}

.dropdown-submenu.pull-left>.dropdown-menu {
    left: -100%;
    margin-left: 10px;
    -webkit-border-radius: 6px 0 6px 6px;
    -moz-border-radius: 6px 0 6px 6px;
    border-radius: 6px 0 6px 6px;
}

.v-scroll-panel {
    max-height: 40vh;
    overflow-y: auto;
}

.upload-image img {
    max-width: 100%;
    max-height: 100%;
}

.list-group-item-header {
    background: #f1f1f1;
    margin: -10px -15px 0 -15px;
    padding: 15px 0;
    border-radius: 4px 4px 0 0;
}

.bg-success .list-group-item-header {
    background: #D0E9C7;
}

.label-centerline {
    position: relative;
    top: -1px;
    padding: 4px 5px 3px;
}

.label-small {
    font-size: 90%;
    font-weight: 400;
}

@media all and (max-width:1024px) {
    .table {
        table-layout: fixed
    }
    td, th {
        text-overflow: ellipsis;
        min-width: 100px;
        white-space: nowrap;
        overflow: hidden;
    }
    .panel-fixed {
        height: auto;
    }
    .panel-fixed .fixed-inner {
        height: auto;
        overflow-y: auto;
        overflow-x: hidden;
        padding-top: 0;
        border-top: white solid 15px;
    }
    .contacts .info.empty .contacts-empty {
        margin-top: 40px;
    }
}

.fa-stack {
    height: 1em;
    width: 1em;
    line-height: 1em;
}

.dropdown-menu {
    z-index: 10000;
}

.loading {
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
    background: rgba(255, 255, 255, 0.7);
    text-align: center;
    font-size: 50px;
    padding-top: 29%;
    left: 0;
    right: 0;
    color: #888;
}

.double-bounce2 {
    -webkit-animation-delay: -1.0s;
    animation-delay: -1.0s;
}

@-webkit-keyframes sk-bounce {
    0%, 100% {
        -webkit-transform: scale(0.0)
    }
    50% {
        -webkit-transform: scale(1.0)
    }
}

@keyframes sk-bounce {
    0%, 100% {
        transform: scale(0.0);
        -webkit-transform: scale(0.0);
    }
    50% {
        transform: scale(1.0);
        -webkit-transform: scale(1.0);
    }
}

.atl-weekpicker {
    margin: 10px;
    table-layout: fixed;
    border: #ddd solid 1px;
}

.atl-weekpicker tfoot {
    padding: 10px;
}

.atl-weekpicker thead tr:first-child {
    background: #f1f1f1;
}

.atl-weekpicker th {
    min-width: 70px;
    padding: 5px;
    border-right: #ddd solid 1px;
}

.atl-weekpicker td {
    vertical-align: middle;
    padding-left: 13px;
    border-right: #ddd solid 1px;
    position: relative;
}

.atl-weekpicker td .time {
    display: inline-block;
    background: #f1f1f1;
    padding: 2px;
    margin: 1px;
    height: 20px;
    width: 20px;
    font-size: 11px;
    cursor: pointer;
    text-align: center
}

.atl-weekpicker tbody tr.ontime:last-child td {
    padding-bottom: 5px;
}

.atl-weekpicker td .time:hover {
    background: #777;
    color: white;
}

.atl-weekpicker td .quarter-1, .atl-weekpicker td .quarter-2, .atl-weekpicker td .quarter-3 {
    display: none;
}

.atl-weekpicker .quarters:hover {
    position: absolute;
    z-index: 1000;
    background: white;
    font-weight: bold;
    border: #999 solid 1px;
    width: 112px;
    top: 0;
    box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.3);
}

.atl-weekpicker .quarters:hover .quarter {
    display: inline-block;
}

.atl-weekpicker .quarters:hover .hour {
    background: #337ab7;
    color: white;
}

.participant-slot-item .participant-table {
    overflow-x: scroll;
}

.participant-slot-item .participant-table table {
    width: auto;
    white-space: nowrap;
}

.context-menu {
    position: relative;
}

.context-menu-container {
    position: absolute;
    width: 300px;
}

.livesearch-field {
    background: url(../img/livesearch.svg) no-repeat right 5px center;
    background-size: 20px;
}

.grecaptcha-badge {
    position: static !important;
    margin: 15px;
    float: right;
}

.white {
    color: white;
}

.panel-tab-footer {
    padding: 15px;
    background: #eee;
    margin: 15px -15px -15px;
    border-radius: 0 0 5px 5px;
}

#contactMassEdit .filter-row {
    margin: 0 15px 10px;
    width: 95%;
    background: #eee;
    padding: 15px 0;
}

#contactMassEdit .filter-row>.row {
    margin: 0;
    padding-right: 10px;
}

#translation-bar {
    position: fixed;
    z-index: 10000;
    padding: 15px 0;
    top: 0;
    background: #f1f1f1;
    width: 100%;
}

#translation-bar .translation-token {
    background: white;
}

.newsletter_groups_select .form-group {
    white-space: nowrap;
    overflow: hidden;
}

.textarea-row {
    height: 34px !important;
}

.no-translation {
    color: red;
}

.underline {
    border-bottom: #ddd solid 1px;
}

.past-date * {
    text-decoration: line-through;
    color: #bbb;
}

.row-tight {
    padding: 0 15px;
}

.row-tight .col {
    padding: 0 5px 0;
    margin-bottom: 10px;
}

.row-tight .col .btn {
    font-size: 12px !important;
}

.m-15 {
    margin: 15px;
}

.p-15 {
    padding: 15px;
}

.pb-0 {
    padding-bottom: 0;
}

.py-15 {
    padding: 15px 0;
}

.label {
    padding: .265em .6em .2em;
}

p {
    margin: 0 !important;
    min-height: 1.4em;
}

/* will be obsolete */

/* ul {
    border: none
}

li {
    padding: 0
}

li:nth-child(2n+1) {
    background: unset !important
}

th {
    font-weight: bold
} */