/* WeStyle Assistant (inc/chatbot.php) */
.ws-wa-float.ws-chat-launch { border: 0; cursor: pointer; background: var(--ws-rose, #c4395d); color: #fff; font: inherit; font-weight: 600; }
.ws-wa-float.ws-chat-launch:hover, .ws-wa-float.ws-chat-launch:focus { color: #fff; background: var(--ws-rose-deep, #a72c4c); }
.ws-chat {
	position: fixed; right: 18px; bottom: calc(86px + env(safe-area-inset-bottom, 0px)); z-index: 991;
	width: min(380px, calc(100vw - 24px)); height: min(560px, calc(100vh - 120px));
	display: flex; flex-direction: column; background: #fbf8f4; border-radius: 18px; overflow: hidden;
	box-shadow: 0 24px 60px rgba(33, 26, 23, .28); font-size: 15px; color: #211a17;
}
.ws-chat[hidden] { display: none; }
.ws-chat__head { display: flex; align-items: center; gap: 12px; padding: 14px 16px; background: #211a17; color: #fff; }
.ws-chat__avatar { width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; background: linear-gradient(135deg, #f3ddb0, #b98c4f); color: #211a17; font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 700; font-size: 20px; }
.ws-chat__title { flex: 1; line-height: 1.2; }
.ws-chat__title small { display: block; opacity: .75; font-size: 12px; margin-top: 2px; }
.ws-chat__close { background: none; border: 0; color: #fff; cursor: pointer; padding: 6px; }
.ws-chat__log { flex: 1; overflow-y: auto; padding: 14px; display: flex; flex-direction: column; gap: 10px; }
.ws-chat__msg { max-width: 88%; padding: 10px 13px; border-radius: 14px; line-height: 1.45; word-wrap: break-word; }
.ws-chat__msg--bot { background: #fff; border: 1px solid #ece2d6; border-bottom-left-radius: 4px; align-self: flex-start; }
.ws-chat__msg--me { background: #c4395d; color: #fff; border-bottom-right-radius: 4px; align-self: flex-end; }
.ws-chat__msg a { color: #a72c4c; font-weight: 600; }
.ws-chat__typing i { display: inline-block; width: 6px; height: 6px; margin: 0 2px; border-radius: 50%; background: #b9a999; animation: wsChatDot 1s infinite; }
.ws-chat__typing i:nth-child(2) { animation-delay: .15s; } .ws-chat__typing i:nth-child(3) { animation-delay: .3s; }
@keyframes wsChatDot { 0%, 60%, 100% { opacity: .3; } 30% { opacity: 1; } }
.ws-chat__chips { display: flex; gap: 6px; overflow-x: auto; padding: 0 12px 10px; scrollbar-width: none; }
.ws-chat__chip { flex: none; border: 1px solid #e3d3c2; background: #fff; color: #211a17; border-radius: 999px; padding: 7px 12px; font-size: 13px; cursor: pointer; white-space: nowrap; }
.ws-chat__chip:hover { border-color: #c4395d; color: #a72c4c; }
.ws-chat__form { display: flex; gap: 8px; padding: 10px 12px 12px; border-top: 1px solid #ece2d6; background: #fff; }
.ws-chat__form input { flex: 1; min-width: 0; height: 44px; border: 1px solid #e3d3c2; border-radius: 999px; padding: 0 16px; font-size: 15px; }
.ws-chat__form button { width: 44px; height: 44px; border: 0; border-radius: 50%; background: #c4395d; color: #fff; cursor: pointer; display: grid; place-items: center; }
.ws-chat__cards { display: grid; gap: 8px; margin: 10px 0; }
.ws-chat__card { display: flex; gap: 10px; align-items: center; padding: 6px; border: 1px solid #ece2d6; border-radius: 10px; text-decoration: none; color: #211a17 !important; font-weight: 400 !important; }
.ws-chat__card img { width: 52px; height: 64px; object-fit: cover; border-radius: 6px; flex: none; }
.ws-chat__card b { display: block; font-size: 13px; line-height: 1.3; }
.ws-chat__card small { display: block; font-size: 12px; color: #7b6c60; margin-top: 3px; }
.ws-chat__hand { display: grid; gap: 8px; margin-top: 10px; }
.ws-chat__btn { display: block; text-align: center; padding: 10px 12px; border-radius: 10px; border: 1px solid #211a17; background: #fff; color: #211a17 !important; font-weight: 700; font-size: 14px; cursor: pointer; text-decoration: none; }
.ws-chat__btn--wa { background: #25d366; border-color: #25d366; color: #fff !important; }
.ws-chat__btn--solid { background: #c4395d; border-color: #c4395d; color: #fff !important; width: 100%; }
.ws-chat__cb { display: grid; gap: 8px; }
.ws-chat__cb input { height: 42px; border: 1px solid #e3d3c2; border-radius: 8px; padding: 0 12px; font-size: 15px; }
.ws-chat__cb .ws-chat__hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.ws-chat__err { color: #b32d2e; font-size: 13px; margin: 0; }
@media (max-width: 900px) {
	.ws-chat { right: 12px; bottom: calc(84px + env(safe-area-inset-bottom, 0px)); }
	.single-product .ws-chat { bottom: calc(156px + env(safe-area-inset-bottom, 0px)); height: min(520px, calc(100vh - 190px)); }
}
