.chat-container{
    position: fixed;
    bottom: 0;
    right: 0;
    background-color: transparent;
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    column-gap: 1rem;
    row-gap: 1rem;
    padding: 1rem;
    width: 100%;
    height: 100%;
    align-items: flex-end;
    flex-direction: row;
    visibility: hidden;
    z-index:101;
}

.chat-container * {
    visibility: visible;
}

/*.chat-container .status-bar{*/
/*    position: absolute;*/
/*    width: 15%;*/
/*    height: 50px;*/
/*    z-index: 99999;*/
/*    background-color: red;*/
/*}*/

.chat-container .chat-loader-spinner{
    display: flex;
    height: -moz-available;
    height: -webkit-fill-available;
    height: fill-available;
    align-items: center;
    justify-content: center;
    align-content: center;
}
.chat-container .chat-list{
    position: absolute;
    width: 40%;
    height: 25rem;
    overflow: auto;
    background-color: white;
    border: black 1px solid;
}

.chat-container .chat-list div.chat-owner-section {
    display: grid;
    grid-template-columns: max-content 1fr max-content max-content;
    align-content: center;
    justify-content: center;
    align-items: center;
    justify-items: start;
    padding: 0.5rem;
    grid-column-gap: 1rem;
    background-color: #003f5e;
    color: white;
}

.chat-container .chat-list div.chat-owner-section img.user-avatar{
    border-radius: 50%;
    border: black 1px solid;
    width: 60px;
    height: 60px;
    transition: 0.3s linear;
    cursor: pointer;
    object-fit: cover;
}
.chat-container .chat-list div.chat-owner-section img.user-avatar:hover{
    transform: scale(1.15);
    border-color: #ffffff;
}
.chat-container .chat-list div.chat-owner-section .user-logout{
    cursor: pointer;
    justify-self: flex-end;
}

.chat-container .chat-list div.chat-owner-section .chat-collapse {
    border: solid white;
    border-width: 0 3px 3px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    cursor: pointer;
}

.chat-container .chat-list ul.chat-list-enum{
    /*overflow: hidden;*/
    padding-left: 0;
}

.chat-container ul.chat-list-enum li.chat-list-item{
    display: grid;
    grid-template-columns: 25% 1fr 13% 0.5fr;
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    padding: 1rem;
    justify-items: left;
    align-items: center;
    transition: 0.6s linear;
}
.chat-container ul.chat-list-enum li.chat-list-item:hover{
    background-color: #d7d7d7;
}

.chat-container ul.chat-list-enum li.chat-list-item img.user-avatar{
    grid-area: 1 / 1 / 3 / 2;
    border-radius: 50%;
    border: black 1px solid;
    width: 50px;
    height: 50px;
    transition: 0.3s linear;
    cursor: pointer;
    justify-self: center;
    object-fit: cover;
}
.chat-container ul.chat-list-enum li.chat-list-item img.user-avatar:hover{
    transform: scale(1.15);
    border-color: #ffffff;
}
.chat-container ul.chat-list-enum li.chat-list-item span.user-name { grid-area: 1 / 2 / 2 / 3; }
.chat-container ul.chat-list-enum li.chat-list-item div.user-status {
    grid-area: 2 / 2 / 3 / 3;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    justify-items: center;
}
.chat-container ul.chat-list-enum li.chat-list-item span.messages-count {
    grid-area: 1 / 3 / 3 / 4;
    padding: 0.5rem;
    border-radius: 50%;
    align-self: center;
    justify-self: center;
}
.chat-container ul.chat-list-enum li.chat-list-item span.messages-count.unread{
    background-color: #dfd4f5;
}
.chat-container ul.chat-list-enum li.chat-list-item span.messages-count.read{
    background-color: transparent;
}
.chat-container ul.chat-list-enum li.chat-list-item button.open-chat-window { grid-area: 1 / 4 / 3 / 5; }

.chat-container div.account-card {
    display: none;
    /*position: absolute;*/
    /*width: 100%;*/
    /*height: 100%;*/
    /*left: -100%;*/
    /*bottom: 0;*/
    position: relative;
    width: 25%;
    height: 25rem;
    background: white;
    border: black 1px solid;
    grid-template-columns: max-content 1fr;
    grid-template-rows: 10% repeat(2, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    align-items: center;
    justify-items: center;
    z-index: 99999;
}

.chat-container div.account-card span.chat-container-close { grid-area: 1 / 1 / 2 / 3; }
.chat-container div.account-card img.user-avatar {
    grid-area: 2 / 1 / 3 / 2;
    border: black 1px solid;
    width: 95px;
    margin: 1rem;
}
.chat-container div.account-card div {
    grid-area: 2 / 2 / 3 / 3;
    display: grid;
    grid-row-gap: 1rem;
}
.chat-container div.account-card button.open-chat-window { grid-area: 3 / 1 / 4 / 3; }

.chat-container ul.chat-list-enum .dot{
    height: 10px;
    width: 10px;
    border-radius: 50%;
    display: inline-block;
}
.chat-container ul.chat-list-enum .dot.offline{
    background-color: #221f1f;
}
.chat-container ul.chat-list-enum .dot.online{
    background-color: #00e719;
}

.chat-container .account-list {
    position:relative;
    /*max-width: 50%;*/
    /*max-height: 70%;*/
    overflow: hidden;
    background: white;
    border: black 1px solid;
    padding: 1rem;
}

.chat-container .account-list .account-list-enum {
    display: flex;
    /*flex-direction: row;*/
    /*!* flex-wrap: wrap; *!*/
    /*align-content: center;*/
    /*justify-content: center;*/
    /*align-items: center;*/
    /*!* overflow-x: auto; *!*/
    overflow-y: auto;
    /*width: 100%;*/
    /*display: grid;*/
    /*grid-template-columns: repeat(4, 1fr);*/
    /*grid-template-rows: repeat(auto-fill, 120px);*/
    /*grid-row-gap: .5em;*/
    /*grid-column-gap: 1em;*/
}
.chat-container .account-list .start-session {
    display: none;
}

.chat-container .account-list .account-list-enum .account-cell {
    display: grid;
    padding: 1rem;
    transition: 0.3s linear;
}
.chat-container .account-list .account-list-enum .account-cell:hover {
    background-color: #d7d7d7;
}
.chat-container .account-list .account-list-enum .account-cell.selected {
    background-color: #75e280;
}
.chat-container .account-list .account-list-enum .account-cell img.user-avatar {
    border: black 1px solid;
    width: 95px;
    margin: 1rem;
}
.chat-container .account-list .account-list-enum .account-cell span.user-name {}
.chat-container .account-list .account-list-enum .account-cell span.user-age {}
.chat-container .account-list .account-list-enum .account-cell span.user-country {}


.chat-container .chat-window {
    position: absolute;
    width: 60%;
    height: 70%;
    /*overflow: hidden;*/
    background: white;
    border: black 1px solid;
    left: 0;
    padding: 1rem;
    display: grid;
    grid-template-columns: 1fr;
    /*grid-template-rows: 5% 54% 10% 14% 10%;*/
    grid-template-rows: 5% auto 10% 15% 10%;
    grid-column-gap: 0;
    grid-row-gap: 1rem;
}

.chat-container .chat-window div.chat-owner-section {
    background-color: #003f5e;
    color: white;
    grid-area: 1 / 1 / 2 / 3;
    margin: -1rem;
}
.chat-container .ui-resizable-handle {
    position: absolute;
    bottom: 0px;
    right: 0px;
    width: 32px;
    height: 16px;
}

/*.chat-container .chat-window .chat-container-close { grid-area: 1 / 1 / 2 / 3; }*/
.chat-container .chat-window .chat-timer-section {
    grid-area: 1 / 1 / 2 / 3;
    justify-self: end;
    align-self: center;
}
.chat-container .chat-window .chat-timer-section .timer{
    padding: 0.5rem;
    border-radius: 50%;
}
.chat-container .idle{
    background-color: grey;
    color: white;
}
.chat-container .running{
    background-color: #75e280;
    color: black;
}
.chat-container .pending{
    background-color: #f1cc0a;
    color: black;
}
.chat-container .rejected{
    background-color: #ff7272;
    color: black;
}
.chat-container .chat-window .chat-stream-section {
    display: grid;
    grid-template-rows: max-content;
    grid-area: 2 / 1 / 3 / 3;
    overflow: auto;
    grid-row-gap: 1rem;
    padding: 1rem;
}
.chat-container .chat-window .chat-stream-section .chat-message {
    border: black 1px solid;
    border-radius: 5%;
    padding: 0.5rem;
    height: max-content;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(3,1fr);
    justify-items: flex-start;
    align-items: center;
    transition: 0.3s linear;
    cursor: pointer;
    background-color: #fbfbfb;
}
.chat-container .chat-window .chat-stream-section .chat-message.unread{
    background-color: #dfd4f5;
}
.chat-container .chat-window .chat-stream-section .chat-message:hover {
    transform: scale(1.1);
}
.chat-container .chat-window .chat-stream-section .chat-message .author{
    font-size: smaller;
    color: dimgrey;
}
.chat-container .chat-window .chat-stream-section .chat-message .text{
    font-size: larger;
    color: black;
}
.chat-container .chat-window .chat-stream-section .chat-message .date{
    font-size: smaller;
    color: dimgrey;
}
.chat-container .chat-window .chat-stream-section .chat-message.start-right{
    justify-self: end;
}
.chat-container .chat-window .chat-stream-section .chat-message.start-left{
    justify-self: start;
}
.chat-container .chat-window .chat-emojis-section {
    overflow: auto;
    grid-area: 3 / 1 / 4 / 3;
}
.chat-container .chat-window .chat-emojis-section span.emoji {
    cursor:pointer;
    transition: 0.3s linear;
}
.chat-container .chat-window .chat-emojis-section span.emoji {
    transform: scale(1.1);
}
.chat-container .chat-window .chat-messaging-section {grid-area: 4 / 1 / 5 / 3;}
.chat-container .chat-window .chat-messaging-section textarea{
    width: -moz-available;
    width: -webkit-fill-available;
    width: fill-available;
    resize: none;
    height: -moz-available;
    height: -webkit-fill-available;
    height: fill-available;
}

.chat-container .chat-window .chat-actions-section {
    grid-area: 5 / 1 / 6 / 3;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    grid-template-rows: 1fr;
    grid-column-gap: 1rem;
    justify-items: center;
    align-items: center;
}

.chat-container .chat-window .chat-actions-section button {
    color:white;
}

.chat-container .lds-spinner {
    color: official;
    display: inline-block;
    position: relative;
    width: 80px;
    height: 80px;
}
.chat-container .lds-spinner div {
    transform-origin: 40px 40px;
    animation: lds-spinner 1.2s linear infinite;
}
.chat-container .lds-spinner div:after {
    content: " ";
    display: block;
    position: absolute;
    top: 3px;
    left: 37px;
    width: 6px;
    height: 18px;
    border-radius: 20%;
    /*background: #fff;*/
    background: #003f5e;
}
.chat-container .lds-spinner div:nth-child(1) {
    transform: rotate(0deg);
    animation-delay: -1.1s;
}
.chat-container .lds-spinner div:nth-child(2) {
    transform: rotate(30deg);
    animation-delay: -1s;
}
.chat-container .lds-spinner div:nth-child(3) {
    transform: rotate(60deg);
    animation-delay: -0.9s;
}
.chat-container .lds-spinner div:nth-child(4) {
    transform: rotate(90deg);
    animation-delay: -0.8s;
}
.chat-container .lds-spinner div:nth-child(5) {
    transform: rotate(120deg);
    animation-delay: -0.7s;
}
.chat-container .lds-spinner div:nth-child(6) {
    transform: rotate(150deg);
    animation-delay: -0.6s;
}
.chat-container .lds-spinner div:nth-child(7) {
    transform: rotate(180deg);
    animation-delay: -0.5s;
}
.chat-container .lds-spinner div:nth-child(8) {
    transform: rotate(210deg);
    animation-delay: -0.4s;
}
.chat-container .lds-spinner div:nth-child(9) {
    transform: rotate(240deg);
    animation-delay: -0.3s;
}
.chat-container .lds-spinner div:nth-child(10) {
    transform: rotate(270deg);
    animation-delay: -0.2s;
}
.chat-container .lds-spinner div:nth-child(11) {
    transform: rotate(300deg);
    animation-delay: -0.1s;
}
.chat-container .lds-spinner div:nth-child(12) {
    transform: rotate(330deg);
    animation-delay: 0s;
}
@keyframes lds-spinner {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

.chat-container .chat-container-close {
    position: absolute;
    right: 15px;
    top: 15px;
    width: 15px;
    height: 15px;
    opacity: 0.3;
}
.chat-container .chat-container-close:hover {
    opacity: 1;
}
.chat-container .chat-container-close:before, .chat-container-close:after {
    position: absolute;
    left: 7px;
    content: ' ';
    height: 15px;
    width: 2px;
    background-color: #333;
}
.chat-container .chat-container-close:before {
    transform: rotate(45deg);
}
.chat-container .chat-container-close:after {
    transform: rotate(-45deg);
}

@media screen and (max-width: 600px){
    .chat-container .chat-list {
        width: 100%;
        height: 100%;
        position: sticky;
    }
    
    .chat-container .chat-window {
        width: 100%;
        height:100%;
        top: 0;
        left: 0;
    }
}
