#frame {
width: 100%;
min-width: 360px;
max-width: 100%;
height: 92vh;
min-height: 300px;
max-height: 720px;
background: #fff;
}
@media screen and (max-width: 360px) {
#frame {
width: 100%;
height: 100vh;
}
}
#frame #sidepanel {
float: left;
min-width: 280px;
width: 430px;
height: 100%;
background: #fff;
color: #727272;
overflow: hidden;
position: relative;
border: 1px solid #e5eded;
border-radius: 10px;
}
@media screen and (max-width: 735px) {
#frame #sidepanel {
}
}
#frame #sidepanel #profile {
width: 80%;
margin: 25px auto;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #profile {
}
}
#frame #sidepanel #profile.expanded .wrap {
height: 210px;
line-height: initial;
}
#frame #sidepanel #profile.expanded .wrap p {
margin-top: 20px;
}
#frame #sidepanel #profile.expanded .wrap i.expand-button {
-moz-transform: scaleY(-1);
-o-transform: scaleY(-1);
-webkit-transform: scaleY(-1);
transform: scaleY(-1);
filter: FlipH;
-ms-filter: "FlipH";
}
#frame #sidepanel #profile .wrap {
height: 60px;
line-height: 60px;
overflow: hidden;
-moz-transition: 0.3s height ease;
-o-transition: 0.3s height ease;
-webkit-transition: 0.3s height ease;
transition: 0.3s height ease;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #profile .wrap {
height: 55px;
}
}
#frame #sidepanel #profile .wrap img {
width: 50px;
border-radius: 50%;
padding: 3px;
border: 2px solid #e74c3c;
height: auto;
float: left;
cursor: pointer;
-moz-transition: 0.3s border ease;
-o-transition: 0.3s border ease;
-webkit-transition: 0.3s border ease;
transition: 0.3s border ease;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #profile .wrap img {
width: 40px;
margin-left: 4px;
}
}
#frame #sidepanel #profile .wrap img.online {
border: 2px solid #2ecc71;
}
#frame #sidepanel #profile .wrap img.away {
border: 2px solid #f1c40f;
}
#frame #sidepanel #profile .wrap img.busy {
border: 2px solid #e74c3c;
}
#frame #sidepanel #profile .wrap img.offline {
border: 2px solid #95a5a6;
}
#frame #sidepanel #profile .wrap p {
float: left;
margin-left: 15px;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #profile .wrap p {
display: none;
}
}
#frame #sidepanel #profile .wrap i.expand-button {
float: right;
margin-top: 23px;
font-size: 0.8em;
cursor: pointer;
color: #435f7a;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #profile .wrap i.expand-button {
display: none;
}
}
#frame #sidepanel #profile .wrap #status-options {
position: absolute;
opacity: 0;
visibility: hidden;
width: 150px;
margin: 70px 0 0 0;
border-radius: 6px;
z-index: 99;
line-height: initial;
background: #435f7a;
-moz-transition: 0.3s all ease;
-o-transition: 0.3s all ease;
-webkit-transition: 0.3s all ease;
transition: 0.3s all ease;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #profile .wrap #status-options {
width: 58px;
margin-top: 57px;
}
}
#frame #sidepanel #profile .wrap #status-options.active {
opacity: 1;
visibility: visible;
margin: 75px 0 0 0;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #profile .wrap #status-options.active {
margin-top: 62px;
}
}
#frame #sidepanel #profile .wrap #status-options:before {
content: '';
position: absolute;
width: 0;
height: 0;
border-left: 6px solid transparent;
border-right: 6px solid transparent;
border-bottom: 8px solid #435f7a;
margin: -8px 0 0 24px;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #profile .wrap #status-options:before {
margin-left: 23px;
}
}
#frame #sidepanel #profile .wrap #status-options ul {
overflow: hidden;
border-radius: 6px;
}
#frame #sidepanel #profile .wrap #status-options ul li {
padding: 15px 0 30px 18px;
display: block;
cursor: pointer;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #profile .wrap #status-options ul li {
padding: 15px 0 35px 22px;
}
}
#frame #sidepanel #profile .wrap #status-options ul li:hover {
background: #496886;
}
#frame #sidepanel #profile .wrap #status-options ul li span.status-circle {
position: absolute;
width: 10px;
height: 10px;
border-radius: 50%;
margin: 5px 0 0 0;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #profile .wrap #status-options ul li span.status-circle {
width: 14px;
height: 14px;
}
}
#frame #sidepanel #profile .wrap #status-options ul li span.status-circle:before {
content: '';
position: absolute;
width: 14px;
height: 14px;
margin: -3px 0 0 -3px;
background: transparent;
border-radius: 50%;
z-index: 0;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #profile .wrap #status-options ul li span.status-circle:before {
height: 18px;
width: 18px;
}
}
#frame #sidepanel #profile .wrap #status-options ul li p {
padding-left: 12px;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #profile .wrap #status-options ul li p {
display: none;
}
}
#frame #sidepanel #profile .wrap #status-options ul li#status-online span.status-circle {
background: #2ecc71;
}
#frame #sidepanel #profile .wrap #status-options ul li#status-online.active span.status-circle:before {
border: 1px solid #2ecc71;
}
#frame #sidepanel #profile .wrap #status-options ul li#status-away span.status-circle {
background: #f1c40f;
}
#frame #sidepanel #profile .wrap #status-options ul li#status-away.active span.status-circle:before {
border: 1px solid #f1c40f;
}
#frame #sidepanel #profile .wrap #status-options ul li#status-busy span.status-circle {
background: #e74c3c;
}
#frame #sidepanel #profile .wrap #status-options ul li#status-busy.active span.status-circle:before {
border: 1px solid #e74c3c;
}
#frame #sidepanel #profile .wrap #status-options ul li#status-offline span.status-circle {
background: #95a5a6;
}
#frame #sidepanel #profile .wrap #status-options ul li#status-offline.active span.status-circle:before {
border: 1px solid #95a5a6;
}
#frame #sidepanel #profile .wrap #expanded {
padding: 100px 0 0 0;
display: block;
line-height: initial !important;
}
#frame #sidepanel #profile .wrap #expanded label {
float: left;
clear: both;
margin: 0 8px 5px 0;
padding: 5px 0;
}
#frame #sidepanel #profile .wrap #expanded input {
border: none;
margin-bottom: 6px;
background: #32465a;
border-radius: 3px;
color: #f5f5f5;
padding: 7px;
width: calc(100% - 43px);
}
#frame #sidepanel #profile .wrap #expanded input:focus {
outline: none;
background: #435f7a;
}
#frame #sidepanel #search {
border-bottom: 1px solid #e5eded;
font-weight: 500;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #search {
display: none;
}
}
#frame #sidepanel #search label {
position: absolute;
margin: 10px 0 0 20px;
}
#frame #sidepanel #search input {
position: relative;
width: 100%;
height: 50px;
border: 1px solid #e5eded;
border-radius: 25px;
padding: 10px 20px 10px 47px;
font-size: 14px;
font-weight: 500;
color: #808080;
background: #fff;
}
#frame #sidepanel #search button{
position: absolute;
top: 42px;
left: 50px;
font-size: 18px;
color: #808080;
font-weight: 400;
cursor: pointer;
background: transparent;
z-index: 1;
transition: all 500ms ease;
}
#frame #sidepanel #search input::-webkit-input-placeholder {
color: #808080;
}
#frame #sidepanel #search input::-moz-placeholder {
color: #808080;
}
#frame #sidepanel #search input:-ms-input-placeholder {
color: #808080;
}
#frame #sidepanel #search input:-moz-placeholder {
color: #808080;
}
#frame #sidepanel #contacts {
height: calc(100% - 177px);
overflow-y: scroll;
overflow-x: hidden;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #contacts {
height: calc(100% - 149px);
overflow-y: scroll;
overflow-x: hidden;
}
#frame #sidepanel #contacts::-webkit-scrollbar {
display: none;
}
}
#frame #sidepanel #contacts.expanded {
height: calc(100% - 334px);
}
#frame #sidepanel #contacts::-webkit-scrollbar {
width: 8px;
background: #2c3e50;
}
#frame #sidepanel #contacts::-webkit-scrollbar-thumb {
background-color: #243140;
}
#frame #sidepanel #contacts ul li.contact {
position: relative;
padding: 15px 30px 15px 30px;
cursor: pointer;
border-bottom: 1px solid #e5eded;
}
#frame #sidepanel #contacts ul li.contact.hidden-message{
background: #f2f7f7;
}
#frame #sidepanel #contacts ul li.contact:last-child{
border-bottom: none;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #contacts ul li.contact {
}
}
#frame #sidepanel #contacts ul li.contact:hover {
}
#frame #sidepanel #contacts ul li.contact.active {
}
#frame #sidepanel #contacts ul li.contact.active span.contact-status {
}
#frame #sidepanel #contacts ul li.contact .wrap {
position: relative;
width: 100%;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #contacts ul li.contact .wrap {
width: 100%;
}
}
#frame #sidepanel #contacts ul li.contact .wrap span.contact-status {
position: absolute;
left: 36px;
bottom: 0px;
width: 15px;
height: 15px;
border-radius: 50%;
border: 3px solid #fff;
z-index: 1;
}
#frame #sidepanel #contacts ul li.contact .wrap span.contact-status.online {
}
#frame #sidepanel #contacts ul li.contact .wrap span.contact-status.away {
}
#frame #sidepanel #contacts ul li.contact .wrap span.contact-status.busy {
}
#frame #sidepanel #contacts ul li.contact .wrap img {
width: 50px;
height: 50px;
border-radius: 50%;
position: absolute;
left: 0px;
top: 0px;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #contacts ul li.contact .wrap img {
margin-right: 0px;
}
}
#frame #sidepanel #contacts ul li.contact .wrap .meta {
padding: 1px 0px 1px 65px;
position: relative;
min-height: 50px;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #contacts ul li.contact .wrap .meta {
}
}
#frame #sidepanel #contacts ul li.contact .wrap .meta h5 {
position: relative;
display: block;
font-size: 18px;
line-height: 24px;
font-weight: 500;
margin-bottom: 0px;
}
#frame #sidepanel #contacts ul li.contact .wrap .meta .preview {
position: relative;
display: block;
font-size: 14px;
line-height: 24px;
color: #727272;
font-weight: 400;
margin: 0px;
}
#frame #sidepanel #contacts ul li.contact .wrap .meta .chat-time {
position: absolute;
top: 0px;
right: -8px;
font-size: 14px;
line-height: 24px;
color: #727272;
font-weight: 400;
margin: 0px; 
}
#frame #sidepanel #contacts ul li.contact .wrap .meta .hidden-chat{
position: absolute;
right: -7px;
bottom: 4px;
font-size: 12px;
color: #fff;
font-weight: 600;
width: 18px;
height: 18px;
line-height: 18px;
text-align: center;
border-radius: 50%;
}
#frame #sidepanel #bottom-bar {
position: absolute;
width: 100%;
bottom: 0;
}
#frame #sidepanel #bottom-bar button {
float: left;
border: none;
width: 50%;
padding: 10px 0;
background: #32465a;
color: #f5f5f5;
cursor: pointer;
font-size: 0.85em;
font-family: "proxima-nova",  "Source Sans Pro", sans-serif;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #bottom-bar button {
float: none;
width: 100%;
padding: 15px 0;
}
}
#frame #sidepanel #bottom-bar button:focus {
outline: none;
}
#frame #sidepanel #bottom-bar button:nth-child(1) {
border-right: 1px solid #2c3e50;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #bottom-bar button:nth-child(1) {
border-right: none;
border-bottom: 1px solid #2c3e50;
}
}
#frame #sidepanel #bottom-bar button:hover {
background: #435f7a;
}
#frame #sidepanel #bottom-bar button i {
margin-right: 3px;
font-size: 1em;
}
@media screen and (max-width: 735px) {
#frame #sidepanel #bottom-bar button i {
font-size: 1.3em;
}
}
@media screen and (max-width: 735px) {
#frame #sidepanel #bottom-bar button span {
display: none;
}
}
#frame .content {
float: right;
width: 60%;
height: 100%;
overflow: hidden;
position: relative;
}
@media screen and (max-width: 735px) {
#frame .content {
}
}
@media screen and (min-width: 900px) {
#frame .content {
width: calc(100% - 430px);
padding-left: 40px;
}
}
#frame .content .contact-profile {
position: relative;
display: block;
padding: 1px 0px 12px 65px;
border-bottom: 1px solid #e5eded;
min-height: 60px;
}
#frame .content .contact-profile img {
position: absolute;
left: 0px;
top: 0px;
width: 50px;
height: 50px;
border-radius: 50%;
}
#frame .content .contact-profile .meta h5 {
position: relative;
display: block;
font-size: 18px;
line-height: 24px;
font-weight: 500;
margin-bottom: 0px;
}
#frame .content .contact-profile .meta p{
position: relative;
display: block;
font-size: 14px;
line-height: 22px;
color: #727272;
font-weight: 400;
margin: 0px;
}
#frame .content .contact-profile .chat-option{
position: absolute;
right: 0px;
bottom: 12px;
}
#frame .content .contact-profile .chat-option a{
position: relative;
display: inline-block;
font-size: 16px;
color: #888888;
width: 44px;
height: 44px;
line-height: 44px;
text-align: center;
border-radius: 50%;
border: 1px solid #e6eded;
}
#frame .content .contact-profile .chat-option a:first-child{
margin-right: 6px;
}
#frame .content .contact-profile .chat-option a:hover{
color: #fff;
}
#frame .content .contact-profile .social-media {
float: right;
}
#frame .content .contact-profile .social-media i {
margin-left: 14px;
cursor: pointer;
}
#frame .content .contact-profile .social-media i:nth-last-child(1) {
margin-right: 20px;
}
#frame .content .contact-profile .social-media i:hover {
color: #435f7a;
}
#frame .content .messages {
height: auto;
min-height: calc(100% - 93px);
max-height: calc(100% - 93px);
overflow-y: scroll;
overflow-x: hidden;
}
@media screen and (max-width: 735px) {
#frame .content .messages {
max-height: calc(100% - 105px);
}
}
#frame .content .messages::-webkit-scrollbar {
width: 8px;
background: transparent;
}
#frame .content .messages::-webkit-scrollbar-thumb {
background-color: rgba(0, 0, 0, 0.3);
}
#frame .content .messages ul li.sent {
position: relative;
display: block;
padding: 40px 0px 40px 75px;
}
#frame .content .messages ul li:nth-last-child(1) {
margin-bottom: 20px;
}
#frame .content .messages ul li.sent img {
}
#frame .content .messages ul li.sent p {
background: #f2f7f7;
color: #061a3a;
font-size: 14px;
line-height: 26px;
}
#frame .content .messages ul li.replies {
position: relative;
display: block;
padding: 40px 75px 40px 0px;
text-align: right;
}
#frame .content .messages ul li.replies img {
position: absolute;
right: 10px;
top: 40px;
width: 50px;
height: 50px;
border-radius: 50%;
}
#frame .content .messages ul li.sent img {
position: absolute;
left: 0px;
top: 40px;
width: 50px;
height: 50px;
border-radius: 50%;
}
#frame .content .messages ul li.sent p {
display: block;
padding: 10px 15px;
border-radius: 5px;
max-width: 315px;
}
#frame .content .messages ul li.sent p:before{
position: absolute;
content: '';
background: #f2f7f7;
width: 18px;
height: 18px;
top: 18px;
left: -8px;
transform: rotate(45deg);
}
#frame .content .messages ul li.sent span.time{
position: relative;
display: block;
font-size: 14px;
line-height: 22px;
color: #727272;
margin-bottom: 10px;
}
#frame .content .messages ul li.replies .text{
position: relative;
float: right;
}
#frame .content .messages ul li.replies p{
background: #f2f7f7;
color: #061a3a;
font-size: 14px;
line-height: 26px;
display: block;
padding: 10px 15px;
border-radius: 5px;
max-width: 315px;
text-align: left;
}
#frame .content .messages ul li.replies p:before{
position: absolute;
content: '';
background: #f2f7f7;
width: 18px;
height: 18px;
top: 18px;
right: -8px;
transform: rotate(45deg);
}
#frame .content .messages ul li.replies span.time {
position: relative;
display: block;
text-align: right;
font-size: 14px;
line-height: 22px;
color: #727272;
margin-bottom: 10px;
}
@media screen and (min-width: 735px) {
#frame .content .messages ul li p {
max-width: 315px;
}
}
#frame .content .message-input {
position: absolute;
bottom: 0;
width: 100%;
z-index: 99;
}
#frame .content .message-input .wrap {
position: relative;
padding-right: 125px;
}
#frame .content .message-input .wrap input {
position: relative;
width: 100%;
height: 50px;
background: #f2f7f7;
font-size: 14px;
font-weight: 500;
color: #808080;
border-radius: 25px;
padding: 10px 30px 10px 85px;
}
@media screen and (max-width: 735px) {
#frame .content .message-input .wrap input {
}
}
#frame .content .message-input .wrap input:focus {
outline: none;
}
#frame .content .message-input .wrap .attachment {
position: absolute;
left: 25px;
z-index: 1;
font-size: 20px;
color: #808080;
top: 15px;
cursor: pointer;
}
#frame .content .message-input .wrap .attachment:after{
position: absolute;
content: '';
background: #e5eded;
height: 50px;
width: 1px;
top: -15px;
right: -20px;
}
@media screen and (max-width: 735px) {
#frame .content .message-input .wrap .attachment {
margin-top: 17px;
right: 65px;
}
}
#frame .content .message-input .wrap .attachment:hover {
opacity: 1;
}
#frame .content .message-input .wrap button {
position: absolute;
right: 65px;
top: 0px;
width: 50px;
height: 50px;
line-height: 50px;
font-size: 20px;
color: #fff;
border-radius: 50%;
text-align: center;
}
@media screen and (max-width: 735px) {
#frame .content .message-input .wrap button {
}
}
#frame .content .message-input .wrap button:hover {
}
#frame .content .message-input .wrap button:focus {
outline: none;
}