/* AW Voice Assistant 1.3 — unified chat: one character launcher, one dark panel. */

/* The old separate launcher (Site Guide robot) is replaced by ours. */
.bot-launcher { display: none !important; }

/* Character launcher */
#awv-launcher {
	position: fixed; right: 22px; bottom: 22px; z-index: 99998;
	width: 72px; height: 72px; border-radius: 50%;
	border: none; padding: 0; overflow: hidden; cursor: pointer;
	background: #7c5cff;
	box-shadow: 0 6px 24px rgba(0,0,0,.35);
	transition: right .25s ease, bottom .25s ease, transform .15s ease;
}
#awv-launcher:hover { transform: scale(1.06); }
#awv-launcher img { width: 100%; height: 100%; object-fit: cover; display: block; }
#awv-launcher svg { width: 34px; height: 34px; fill: #fff; }
/* When the chat is open the character docks to the LEFT of the panel. */
body.awv-open #awv-launcher { right: 430px; bottom: 24px; }

/* Dark chat panel */
#awv-panel {
	position: fixed; right: 20px; bottom: 20px; z-index: 99999;
	width: 384px; max-width: calc(100vw - 24px);
	height: 600px; max-height: calc(100vh - 40px);
	background: #16161e; color: #f2f2f5;
	border-radius: 18px; overflow: hidden;
	display: none; flex-direction: column;
	box-shadow: 0 12px 48px rgba(0,0,0,.55);
	font-family: inherit; font-size: 15px;
}
#awv-panel.awv-show { display: flex; }
.awv-head {
	display: flex; align-items: center; justify-content: space-between;
	padding: 12px 14px; background: #1e1e28; border-bottom: 1px solid #2a2a36;
	font-weight: 600;
}
.awv-headbtns { display: flex; gap: 6px; align-items: center; }
.awv-headbtns button {
	background: #2a2a36; color: #fff; border: none; border-radius: 8px;
	padding: 5px 10px; cursor: pointer; font-size: 13px;
}
.awv-headbtns button:hover { background: #383848; }
.awv-status { padding: 6px 14px; font-size: 12px; color: #9a9ab0; min-height: 18px; }
.awv-msgs { flex: 1; overflow-y: auto; padding: 10px 14px; display: flex; flex-direction: column; gap: 10px; }
.awv-msg { max-width: 88%; padding: 9px 13px; border-radius: 14px; line-height: 1.45; word-wrap: break-word; }
.awv-msg.awv-bot { background: #262633; align-self: flex-start; border-bottom-left-radius: 4px; }
.awv-msg.awv-user { background: #7c5cff; color: #fff; align-self: flex-end; border-bottom-right-radius: 4px; }
.awv-inputrow {
	display: flex; gap: 8px; align-items: center;
	padding: 12px; background: #1e1e28; border-top: 1px solid #2a2a36;
}
.awv-mic {
	flex: 0 0 44px; width: 44px; height: 44px; border-radius: 50%;
	border: none; cursor: pointer; background: #7c5cff;
	display: flex; align-items: center; justify-content: center;
}
.awv-mic svg { width: 20px; height: 20px; fill: #fff; }
.awv-mic.awv-live { background: #e5484d; animation: awv-pulse 1.2s infinite; }
@keyframes awv-pulse { 0% { box-shadow: 0 0 0 0 rgba(229,72,77,.5); } 70% { box-shadow: 0 0 0 12px rgba(229,72,77,0); } 100% { box-shadow: 0 0 0 0 rgba(229,72,77,0); } }
.awv-text {
	flex: 1; background: #101018; color: #fff;
	border: 1px solid #2a2a36; border-radius: 22px;
	padding: 11px 16px; font-size: 15px; outline: none; min-width: 0;
}
.awv-text:focus { border-color: #7c5cff; }
.awv-send {
	flex: 0 0 auto; background: #7c5cff; color: #fff; border: none;
	border-radius: 22px; padding: 11px 18px; cursor: pointer; font-size: 15px;
}
.awv-send:hover { background: #6a4de0; }

@media (max-width: 520px) {
	#awv-panel { right: 12px; left: 12px; width: auto; bottom: 100px; height: 70vh; }
	body.awv-open #awv-launcher { right: auto; left: 12px; bottom: 16px; }
}
