* {
	font-family: Arial;
}
body {
	margin: 0;
}
.container {
	display: flex;
	height: 100vh;
	background: #f0f2f5;
}

/* CONTACT LIST LEFT PANEL */
.contacts-panel {
	width: 30%;
	background: white;
	border-right: 1px solid #ddd;
	display: flex;
	flex-direction: column;
}

.contact-search {
	padding: 10px;
	border-bottom: 1px solid #ddd;
}
#searchContact {
	width: 100%;
	padding: 8px;
	border-radius: 5px;
	border: 1px solid #ccc;
}

#contact-list {
	flex: 1;
	overflow-y: auto;
}
.contact-item {
	padding: 12px;
	border-bottom: 1px solid #e9e9e9;
	cursor: pointer;
}
.contact-item:hover {
	background: #f5f5f5;
}

/* CHAT PANEL */
.chat-panel {
	flex: 1;
	display: flex;
	flex-direction: column;
	background: #e5ddd5;
}
.chat-header {
	padding: 15px;
	background: #fff;
	border-bottom: 1px solid #ddd;
	font-weight: bold;
}

/* CHAT BOX */
#chat-box {
	flex: 1;
	padding: 15px;
	overflow-y: auto;
}

/* BUBBLES */
.chat {
	display: flex;
	margin-bottom: 8px;
}
.chat.in {
	justify-content: flex-start;
}
.chat.out {
	justify-content: flex-end;
}

.bubble {
	max-width: 60%;
	padding: 10px;
	border-radius: 7px;
	font-size: 14px;
	white-space: pre-wrap;
}
.in .bubble {
	background: white;
	border-radius: 0px 7px 7px 7px;
}
.out .bubble {
	background: #dcf8c6;
	border-radius: 7px 0px 7px 7px;
}

/* INPUT PANEL */
.send-panel {
	padding: 10px;
	background: white;
	display: flex;
	align-items: center;
	gap: 10px;
}
#message {
	flex: 1;
	padding: 10px;
	border-radius: 5px;
	border: 1px solid #ccc;
}

/* Scrollbar */
#chat-box::-webkit-scrollbar,
#contact-list::-webkit-scrollbar {
	width: 6px;
}
#chat-box::-webkit-scrollbar-thumb,
#contact-list::-webkit-scrollbar-thumb {
	background: #ccc;
	border-radius: 6px;
}
