#scrollUpCustom {
    bottom: 65px;
    right: 5px;
}

body.modal-open {
    position: fixed;
}

#page {
    /*width: 1280px;*/
    min-height: 100%;
    margin: 0 auto;

    /*border: 1px solid red;*/
}

#header {
    text-align: center;
    width: 100%;
    height: 100px;
    /*border: 1px solid blue;*/
}

#footer {
    clear: both;
    text-align: center;
    width: 100%;
    height: 100px;
    /*border: 1px solid darkorchid;*/
}

#footer a {
    margin-left: 15px;
}

#menu {
    width: 100%;
}

.ui-menu {
    font-size: 10pt;
}

#content {
    height: 100%;
    padding: 10px;

    /*border: 1px solid aqua;*/
}

.hidden {
    display: none;
}

.no-border {
    border: none;
}

.ui-datascroller.no-border > .ui-datascroller-content {
    border: none;
}

span.badge-counter-right {
    position: absolute;
    margin-top: -10px;
    margin-left: -10px;
}

span.badge-counter-left {
    position: absolute;
    margin-top: -10px;
    margin-left: 10px;
}

.navbar-toggle > span.badge-counter-left {
    position: absolute;
    margin-top: -15px;
    margin-left: -35px;
}

span.text-size-10 {
    font-size: 10px;
}

span.background-color-red {
    background-color: red;
}

.message {
    margin-bottom: 5px;
}

.message.incoming {
    text-align: left;
    --speech-bubble-color: #aaeeff;
}

.message.outgoing {
    text-align: right;
    --speech-bubble-color: #ddffcc;
}

.message.outgoing.other {
    --speech-bubble-color: #aaeeff;
}

.message .message-text {
    display: block;
    white-space: pre-line;
}

.message .message-info {
    display: block;
    font-size: x-small;
}

.message.outgoing .message-info {
    text-align: right;
}

.speech-bubble {
    position: relative;
    background: var(--speech-bubble-color, #aaeeff);
    border-radius: .4em;

    padding: 10px;
    max-width: 85%;

    display: inline-block;
    text-align: left;
}

.speech-bubble.above:after,
.speech-bubble:not(.left):not(.right):not(.below):after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-top-color: var(--speech-bubble-color, #aaeeff);
    border-bottom: 0;
    border-left: 0;
    margin-left: 0;
    margin-bottom: -10px;
}

.speech-bubble.left:after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-left-color: var(--speech-bubble-color, #aaeeff);
    border-right: 0;
    border-bottom: 0;
    margin-top: 0;
    margin-right: -10px;
}

.speech-bubble.right:after {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-right-color: var(--speech-bubble-color, #aaeeff);
    border-left: 0;
    border-bottom: 0;
    margin-top: 0;
    margin-left: -10px;
}

.no-transition {
    transition: none !important;
}