
a {
  text-decoration: none;
}
input:focus,
button:focus {
  outline: none !important;
  box-shadow: none !important;
}
hr {
  width: 80%;
  margin: auto;
}
#main {
  height: 100vh;
  width: 100vw;
  display: flex;
}
.blur {
  filter: blur(5px);
}
#chat_user_list {
  width: 25%;
}

#chatbox {
  width: 75%;
  transition: all 0.2s;
}
#details_of_user {
  width: 0%;
  transition: all 0.2s;
}
#owner_profile_details {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-top: 10px;
}
#owner_avtar {
  position: relative;
  height: 65px;
  width: 65px;
  border-radius: 100%;
  margin: 10px 10px 10px 25px;
}
#owner_avtar #online {
  position: absolute;
  height: 14px;
  width: 14px;
  border-radius: 100%;
  background-color: #5bde4d;
  bottom: 0;
  right: 0;
  border: 2px solid white;
}
#owner_profile_text {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
}
#bio {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 5px;
}
#bio i {
  margin-left: 10px;
}
#bio i:hover {
  cursor: pointer;
}
#chat_user_list {
  height: 100vh;
  background-color: #f5f6fa;
  overflow-y: scroll;
}
#user_details #message {
  font-size: 15px;
}
#time {
  font-size: 14px;
}
#chat_user_list::-webkit-scrollbar {
  display: none;
}

#update_container {
  position: absolute;
  width: 28%;
  top: 50%;
  left: 50%;
  border-radius: 5px;
  transform: translate(-50%, -50%);
  background-color: white;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.5);
  overflow: hidden;
  display: none;
}
#update_container form {
  padding: 10px;
}
#update_container i {
  float: right;
  cursor: pointer;
}
#update_container #update_bio {
  width: 100%;
  height: 100px;
  resize: none;
  border-style: none;
  outline: none;
  background-color: #f5f6fa;
  border-radius: 5px;
  padding: 10px;
}
#update_btn {
  background-color: #157dff;
  color: white;
}
#search_box_container {
  display: flex;
  align-items: center;
  justify-content: left;
}
#search_box_container #search {
  width: 250px;
  border-style: none;
  border-radius: 20px;
  box-shadow: 10px 2px 6px rgba(0, 0, 0, 0.1);
  background-color:  rgba(0, 0, 0, 0.1);
  color:black;
}
.user {
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  border-radius: 5px;
  margin: 0 10px;
}
.user:hover {
  background-color: white;
}
.active {
  background-color: white;
}
#user_avtar {
  height: 45px;
  width: 45px;
  border-radius: 100%;
  position: relative;
}
#online {
  position: absolute;
  height: 14px;
  width: 14px;
  border-radius: 100%;
  background-color: #5bde4d;
  bottom: 0;
  right: 0;
  border: 2px solid white;
}
#avtar_and_details {
  display: flex;
  align-items: center;
}
#user_details {
  margin-left: 5px;
}
#chatbox {
  position: relative;
  height: 80vh;
  background-color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
}
#data_container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
#bg_image {
  height: 300px;
  width: 380px;
  background-image: url("http://localhost/rtchat-ci/assets/images/pchatn.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

.chatting_section {
  position: absolute;
  height: 100%;
  width: 100%;
  background-color: white;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}
#header {
  width: 100%;
  height: 12%;
  background-color: #f5f6fa;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 2px solid white;
}
#name_details {
  display: flex;
  align-items: center;
}
#chat_profile_image {
  position: relative;
  height: 50px;
  width: 50px;
  border-radius: 100%;
}
#name_last_seen p {
  font-size: 13.5px;
}
#icons {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 22px;
  /* background:black; */
}
#icons div i {
  padding-right: 10px;
}
#icons div i {
  cursor: pointer;
  /* color: #AFAFAF; */
}
#icons div i:hover {
  color: rgba(0, 0, 0, 0.5);
}
#messageBar {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#textBox_attachment_emoji_container {
  width: 90%;
  height: 45px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 20px;
  background-color: #f5f6fa;
  box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.1);
}
#text_box_message {
  width: 100%;
}
#messageText {
  border-style: none;
  padding-left: 15px;
  background-color: transparent;
}
#messageText:focus {
  outline: none !important;
  box-shadow: none !important;
}
#text_counter {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-right: 20px;
}
#sendButtonContainer {
  width: 8%;
  justify-content: center;
  display: flex;
  align-items: center;
}
#sendButtonContainer .btn {
  background-color: #157dff;
  color: white;
  height: 45px;
  width: 45px;
  border-radius: 100%;
  justify-content: center;
  display: flex;
  align-items: center;
  box-shadow: 0px 2px 6px #157dff;
}

#chat_message_area {
  height: 100%;
  width: 100%;
  padding: 20px;
  overflow-y: scroll;
}
#chat_message_area::-webkit-scrollbar {
  display: none;
}
#sender_msg_container {
  margin: 5px 0px;
  display: flex;
  justify-content: flex-start;
}
#receiver_msg_container {
  margin: 5px 0px;
  display: flex;
  justify-content: flex-end;
}
#sender_image,
#receiver_image {
  height: 40px;
  width: 40px;
  margin: 0px 5px;
  border-radius: 100%;
}
#chat_message_area #sender_msg {
  max-width: 50%;
  width: fit-content;
  height: fit-content;
  word-wrap: break-word;
  border-radius: 3px 15px 15px 15px;
  background-color: #ebf3fd;
}
#chat_message_area #sender_msg p {
  text-align: justify;
  padding: 5px 20px 5px 20px;
  font-size: 16px;
}
#chat_message_area #receiver_msg {
  max-width: 50%;
  width: fit-content;
  word-wrap: break-word;
  height: fit-content;
  border-radius: 15px 3px 15px 15px;
  background-color: #157dff;
  color: white;
}
#chat_message_area #receiver_msg p {
  text-align: justify;
  padding: 5px 20px 5px 20px;
  font-size: 16px;
}
#not_message_yet {
  height: 100%;
  width: 100%;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
#not_message_yet div {
  height: 55%;
  width: 40%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
#not_message_yet div div {
  height: 150px;
  width: 150px;
  background-size: 100% 100%;
  border-radius: 100%;
  background-position: center;
  background-repeat: no-repeat;
}
#not_message_yet div p,
h4 {
  margin: 5px;
}
#details_of_user {
  background-color: #f5f6fa;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
#user_details_container_avtar {
  height: 150px;
  width: 150px;
  margin: 5%;
  border-radius: 100%;
}
#user_details_container_details {
  height: fit-content;
  max-width: 85%;
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: center;
}
#details_of_name,
#details_of_bio {
  word-wrap: break-all;
}
#details_of_email,
#details_of_created,
#details_of_birthday,
#details_of_location,
#details_of_mobile {
  word-break: break-all;
  margin: 10px 0;
  padding: 0;
  font-size: 14px;
}
#btn_block {
  /* background-color:#157DFF; */
  color: white;
  border-radius: 20px;
  width: fit-content;
  margin: 15px 0px;
}

 label{
        margin-bottom: 0px;
    }
    /* New Chat Styles */
.chat-main-container {
    display: flex;
    height: 75vh; /* Adjust as needed */
    width: 95%; /* Adjust as needed */
    max-width: 1200px; /* Limit maximum width */
    margin: 20px auto; /* Center the chat container */
    background-color: #f8f9fa; /* Light background for overall chat */
    border-radius: 8px;
    overflow: hidden; /* Hide overflow content */
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.chat-sidebar {
    width: 280px; /* Fixed width for sidebar */
    background-color: #ffffff;
    border-right: 1px solid #e0e0e0;
    display: flex;
    flex-direction: column;
}

.chat-branding {
    padding: 15px;
    font-weight: bold;
    color: white;
    background-color: #F47920; /* Brand color */
    text-align: center;
    border-bottom: 1px solid #e0e0e0;
    font-size: 22px;
}

.owner-profile-card {
    display: flex;
    align-items: center;
    padding: 15px;
    border-bottom: 1px solid #e0e0e0;
    gap: 10px;
}

.owner-avatar {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-size: cover !important;
    background-position: center !important;
    position: relative;
    border: 2px solid #fff;
    box-shadow: 0 1px 4px rgba(0,0,0,0.1);
}

.online-status {
    width: 12px;
    height: 12px;
    background-color: #28a745; /* Green for online */
    border-radius: 50%;
    border: 2px solid #fff;
    position: absolute;
    bottom: 0;
    right: 0;
}

.owner-profile-info h6 {
    font-size: 18px;
    font-weight: 600;
    color: #333;
}

.owner-profile-info p {
    font-size: 14px;
    color: #666;
}

.chat-search-box {
    padding: 15px;
    border-bottom: 1px solid #e0e0e0;
}

.chat-search-box .form-control {
    border-radius: 20px;
    padding: 8px 15px;
    border: 1px solid #ddd;
}

.user-list-container {
    flex-grow: 1;
    overflow-y: auto; /* Scrollable user list */
    background-color: #fcfcfc;
}

/* Chat Area Main */
.chat-area-main {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    background-color: #ffffff; /* White background for chat area */
}

.welcome-message-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    text-align: center;
    padding: 20px;
    color: #6c757d;
}

.welcome-title {
    font-size: 2.5rem !important;
    color: #343a40;
    margin-bottom: 15px;
}

.welcome-text {
    font-size: 1.2rem !important;
    line-height: 1.6;
}

.chat-header {
    display: flex;
    align-items: center;
    padding: 15px 20px;
    background-color: #f8f9fa;
    border-bottom: 1px solid #e0e0e0;
    justify-content: space-between;
}

.chat-profile-details {
    display: flex;
    align-items: center;
    gap: 10px;
}

.chat-profile-image {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background-size: cover !important;
    background-position: center !important;
    position: relative;
    border: 2px solid #fff;
    box-shadow: 0 1px 4px rgba(0,0,0,0.1);
}

.chat-name-info h6 {
    font-size: 1.2rem;
    font-weight: 600;
    color: #333;
    margin-left: 5px; /* Adjust spacing */
}

.chat-header-icons {
    display: flex;
    align-items: center;
}

.chat-user-email {
    font-size: 14px;
    color: #666;
}

.chat-message-display-area {
    flex-grow: 1;
    padding: 20px;
    overflow-y: auto; /* Scrollable message area */
    background-color: #e5ddd5; /* Chat background color */
    scroll-behavior: smooth; /* Add smooth scrolling behavior */
}

.image-preview-area {
    padding: 10px 20px 0;
    min-height: 60px; /* Space for image previews */
    background-color: #fff;
    border-top: 1px solid #eee;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.image-preview-area img {
    max-height: 50px;
    width: 50px;
    border-radius: 8px;
    object-fit: cover;
    border: 1px solid #ddd;
}

.image-preview-area .closeDiv {
    position: relative;
    top: -20px;
    right: 5px;
    background: rgba(0,0,0,0.6);
    color: white;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 12px;
    cursor: pointer;
}

.chat-message-input-bar {
    display: flex;
    align-items: center;
    padding: 10px 20px;
    background-color: #f7f7f7; /* Lighter background for input bar */
    border-top: 1px solid #e0e0e0;
    gap: 10px;
    box-shadow: 0 -2px 8px rgba(0,0,0,0.05); /* Shadow at the top */
}

.input-actions-container {
    display: flex;
    align-items: center;
    gap: 5px;
}

.attachment-button, .attachment-button-plus {
    background-color: #6c757d; /* Gray for attachment button */
    color: white;
    border-radius: 50%;
    width: 42px; /* Slightly larger */
    height: 42px; /* Slightly larger */
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    font-size: 19px; /* Slightly larger icon */
    transition: background-color 0.2s, transform 0.2s; /* Add transform transition */
}
.attachment-button:hover, .attachment-button-plus:hover {
    background-color: #5a6268;
    transform: scale(1.05); /* Pop effect on hover */
}

.attachment-button-plus i {
    font-size: 17px;
}

.text-input-container {
    flex-grow: 1;
}

.chat-text-input {
    border-radius: 22px; /* More rounded */
    padding: 10px 18px; /* More padding */
    border: 1px solid #e0e0e0; /* Subtle border */
    background-color: #fff;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.05);
    height: 42px; /* Match button height */
    width: 100%; /* Ensure it fills container */
}
.chat-text-input:focus {
    border-color: #80bdff; /* Blue border on focus */
    box-shadow: 0 0 0 0.2rem rgba(0,123,255,.25); /* Blue glow on focus */
    outline: none; /* Remove default outline */
}

.send-like-buttons-container {
    display: flex;
    gap: 8px; /* Slightly more space between buttons */
}

.send-button, .upload-button {
    background-color: #007bff; /* Primary blue for send */
    border: none;
    border-radius: 50%;
    width: 42px;
    height: 42px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    font-size: 22px; /* Slightly larger icon */
    color: white; /* Ensure icon is white */
    transition: background-color 0.2s, transform 0.2s;
}
.send-button:hover, .upload-button:hover {
    background-color: #0056b3;
    transform: scale(1.05);
}

.like-button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    width: 42px; /* Match other buttons */
    height: 42px; /* Match other buttons */
    display: flex;
    justify-content: center;
    align-items: center;
    transition: transform 0.2s;
}
.like-button i {
    font-size: 30px; /* Slightly larger thumbs-up */
    color: #F47920; /* Brand color for like */
}
.like-button:hover i {
    transform: scale(1.15); /* More pronounced pop effect */
}

/* Adjustments for existing .fa icons to look better */
.fa {
    line-height: 1; /* Align font awesome icons vertically */
}

.text-alert{
  color: orange;
  font-weight: bolder;
}

/* Styles for read/unread status in user list */


/* User List Item Styles */
.user-list-item-link {
    text-decoration: none; /* Remove underline from links */
    color: inherit; /* Inherit color from parent */
}

.user-list-item {
    display: flex;
    align-items: center;
    padding: 10px 15px;
    border-bottom: 1px solid #f0f0f0;
    transition: background-color 0.2s ease, box-shadow 0.2s ease;
    cursor: pointer;
    gap: 10px;
}

.user-list-item:hover {
    background-color: #f5f5f5; /* Lighter background on hover */
    box-shadow: 0 1px 6px rgba(0,0,0,0.08); /* Subtle shadow on hover */
}

.user-list-item.active-user {
    background-color: #e0f2f7; /* Highlight active user */
    border-left: 4px solid #007bff; /* Blue border for active */
    padding-left: 11px; /* Adjust padding due to border */
}

.user-avatar-container {
    position: relative;
    flex-shrink: 0; /* Prevent shrinking */
}

.user-avatar {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background-size: cover !important;
    background-position: center !important;
    border: 2px solid #fff; /* White border */
    box-shadow: 0 1px 4px rgba(0,0,0,0.1);
}

.user-online-status {
    width: 12px;
    height: 12px;
    background-color: #28a745; /* Green for online */
    border-radius: 50%;
    border: 2px solid #fff;
    position: absolute;
    bottom: 0;
    right: 0;
}

.user-info {
    flex-grow: 1;
    overflow: hidden; /* Hide overflow text */
}

.user-name {
    font-size: 16px;
    font-weight: 600;
    color: #333;
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; /* Add ellipsis for long names */
}

.last-message {
    font-size: 13px;
    color: #666;
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; /* Add ellipsis for long messages */
}

.message-time-container {
    display: flex;
    flex-direction: column;
    align-items: flex-end; /* Align time and unread count to the right */
    gap: 2px;
    flex-shrink: 0; /* Prevent shrinking */
}

.message-time {
    font-size: 11px;
    color: #999;
    white-space: nowrap;
}

.unread-count {
    background-color: #F47920; /* Brand color for unread count */
    color: white;
    font-size: 10px;
    font-weight: bold;
    border-radius: 10px; /* Rounded badge */
    padding: 2px 7px;
    min-width: 20px; /* Ensure minimum width for single digit */
    text-align: center;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    }