.bv-support-chat{
	--bv-chat-green:#16a34a;
	--bv-chat-green-deep:#15803d;
	--bv-chat-header:#1f7a3a;
	--bv-chat-cream:#f4f7ef;
	--bv-chat-cream-2:#eef5e6;
	--bv-chat-text:#0f172a;
	--bv-chat-muted:rgba(15,23,42,.64);
	--bv-chat-border:rgba(15,23,42,.12);
	--bv-chat-white:#fff;
	--bv-chat-radius:24px;
	--bv-chat-shadow:0 10px 28px rgba(15,23,42,.16);
	position:fixed;
	right:max(16px, env(safe-area-inset-right));
	bottom:max(16px, env(safe-area-inset-bottom));
	z-index:999999;
	width:min(420px, calc(100% - 32px));
	font-family:Inter,"Segoe UI",system-ui,sans-serif;
	font-size:14px;
	line-height:1.45;
	color:var(--bv-chat-text);
	box-sizing:border-box;
}
.bv-support-chat *,
.bv-support-chat *::before,
.bv-support-chat *::after{box-sizing:border-box}
.bv-support-chat button,
.bv-support-chat input{font:inherit}

.bv-support-chat__launcher{
	appearance:none;
	display:inline-flex;
	align-items:center;
	gap:8px;
	position:relative;
	margin-left:auto;
	border:0;
	border-radius:999px;
	min-height:44px;
	padding:10px 16px;
	cursor:pointer;
	background:var(--bv-chat-green);
	color:#fff;
	font-weight:700;
	letter-spacing:.01em;
	box-shadow:var(--bv-chat-shadow);
	float:right;
	transition:transform .15s ease, filter .15s ease, box-shadow .15s ease, background-color .15s ease;
}
.bv-support-chat__launcher:hover{
	background:var(--bv-chat-green-deep);
	box-shadow:0 12px 30px rgba(15,23,42,.18);
	transform:translateY(-1px);
}
.bv-support-chat__launcher:focus-visible{
	outline:3px solid rgba(21,128,61,.45);
	outline-offset:3px;
}
.bv-support-chat__launcher-icon{display:flex;line-height:0}
.bv-support-chat__launcher-dot{
	position:absolute;
	top:6px;
	right:8px;
	width:8px;
	height:8px;
	border-radius:50%;
	background:#86efac;
	box-shadow:0 0 0 2px var(--bv-chat-green);
}

.bv-support-chat__panel{
	clear:both;
	position:absolute;
	right:0;
	bottom:56px;
	width:100%;
	max-height:min(680px, calc(100dvh - 96px));
	display:flex;
	flex-direction:column;
	background:var(--bv-chat-white);
	border:1px solid var(--bv-chat-border);
	border-radius:var(--bv-chat-radius);
	overflow:hidden;
	box-shadow:var(--bv-chat-shadow);
}
.bv-support-chat__panel[hidden]{display:none}

.bv-support-chat__header{
	position:relative;
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:10px;
	padding:18px 16px 24px;
	background:var(--bv-chat-header);
	color:#fff;
}
.bv-support-chat__header-left{display:flex;align-items:center;gap:12px;min-width:0}
.bv-support-chat__avatar{
	width:44px;
	height:44px;
	border-radius:50%;
	background:#2d9a4f center/cover no-repeat;
	display:flex;
	align-items:center;
	justify-content:center;
	flex:0 0 auto;
	overflow:hidden;
}
.bv-support-chat__avatar svg{
	width:32px;
	height:32px;
}
.bv-support-chat__avatar.has-photo > svg{display:none}
.bv-support-chat__brand{min-width:0}
.bv-support-chat__title{
	font-weight:800;
	font-size:1.22rem;
	letter-spacing:-.02em;
	line-height:1.1;
}
.bv-support-chat__subtitle{font-size:.88rem;opacity:.94;margin-top:3px;font-weight:600}
.bv-support-chat__header-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.bv-support-chat__online{
	display:inline-flex;
	align-items:center;
	gap:6px;
	padding:4px 10px;
	border-radius:999px;
	background:rgba(255,255,255,.16);
	color:#fff;
	font-size:.75rem;
	font-weight:700;
}
.bv-support-chat__online-dot{
	width:8px;
	height:8px;
	border-radius:50%;
	background:#86efac;
}
.bv-support-chat__close{
	appearance:none;
	border:0;
	background:transparent;
	color:#fff;
	width:44px;
	height:44px;
	border-radius:12px;
	cursor:pointer;
	font-size:26px;
	line-height:1;
}
.bv-support-chat__close:hover,
.bv-support-chat__close:focus-visible{background:rgba(255,255,255,.16)}
.bv-support-chat__close:focus-visible{outline:3px solid rgba(255,255,255,.7);outline-offset:2px}
.bv-support-chat__wave{
	position:absolute;
	left:0;
	right:0;
	bottom:-1px;
	width:100%;
	height:16px;
	display:block;
}

.bv-support-chat__body{
	flex:1 1 auto;
	min-height:0;
	overflow-x:hidden;
	overflow-y:auto;
	background:var(--bv-chat-white);
	padding:10px 18px 18px;
	-webkit-overflow-scrolling:touch;
}
.bv-support-chat__heading{
	margin:8px 0 4px;
	font-size:1.28rem;
	line-height:1.2;
	color:var(--bv-chat-text);
}
.bv-support-chat__lede{
	margin:0 0 6px;
	font-weight:700;
	color:var(--bv-chat-text);
}
.bv-support-chat__lede--chat{margin:4px 0 10px}
.bv-support-chat__intro{
	margin:0 0 14px;
	color:var(--bv-chat-muted);
	font-size:.92rem;
}
.bv-support-chat__benefits{
	display:grid;
	grid-template-columns:repeat(3, minmax(0,1fr));
	gap:8px;
	margin:0 0 16px;
	padding:0;
	list-style:none;
	color:var(--bv-chat-green-deep);
	text-align:center;
	font-size:.72rem;
	font-weight:700;
}
.bv-support-chat__benefits li{display:flex;flex-direction:column;align-items:center;gap:4px}
.bv-support-chat__benefits svg{color:var(--bv-chat-green)}

.bv-support-chat__label{
	display:block;
	font-weight:700;
	margin:10px 0 6px;
	color:var(--bv-chat-text);
}
.bv-support-chat__input{
	width:100%;
	min-height:46px;
	border:1px solid var(--bv-chat-border);
	border-radius:14px;
	padding:10px 12px;
	background:#fff;
	color:var(--bv-chat-text);
	outline:none;
}
.bv-support-chat__input:focus{
	border-color:var(--bv-chat-green);
	box-shadow:0 0 0 3px rgba(22,163,74,.16);
}
.bv-support-chat__button{
	appearance:none;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	width:100%;
	min-height:50px;
	margin-top:14px;
	border:0;
	border-radius:999px;
	padding:12px 16px;
	background:var(--bv-chat-green);
	color:#fff;
	font-weight:800;
	cursor:pointer;
}
.bv-support-chat__button:hover{background:var(--bv-chat-green-deep)}
.bv-support-chat__button:focus-visible{
	outline:3px solid rgba(14,165,164,.45);
	outline-offset:2px;
}
.bv-support-chat__button:disabled{opacity:.65;cursor:wait}
.bv-support-chat__button-icon{display:flex;line-height:0}
.bv-support-chat__hint{margin-top:8px;color:#b00020;font-size:.82rem;min-height:16px}
.bv-support-chat__privacy{
	display:flex;
	align-items:flex-start;
	gap:6px;
	margin:12px 0 8px;
	color:var(--bv-chat-muted);
	font-size:.78rem;
	line-height:1.4;
}
.bv-support-chat__privacy svg{flex:0 0 auto;margin-top:1px}
.bv-support-chat__setup{padding-bottom:8px}

.bv-support-chat__chat[hidden],
.bv-support-chat__messages[hidden],
.bv-support-chat__quick[hidden],
.bv-support-chat__setup[hidden],
.bv-support-chat__composer[hidden]{display:none}

.bv-support-chat__messages{
	display:flex;
	flex-direction:column;
	gap:12px;
	max-height:none;
	padding:4px 0 14px;
}
.bv-support-chat__msg{display:flex;align-items:flex-start;gap:8px;max-width:100%}
.bv-support-chat__msg-avatar{
	width:28px;
	height:28px;
	border-radius:50%;
	background:var(--bv-chat-cream-2);
	display:flex;
	align-items:center;
	justify-content:center;
	flex:0 0 auto;
	margin-top:2px;
}
.bv-support-chat__msg-main{
	display:flex;
	flex-direction:column;
	gap:4px;
	max-width:78%;
	min-width:0;
}
.bv-support-chat__bubble{
	padding:12px 14px;
	border-radius:16px;
	max-width:100%;
	white-space:pre-wrap;
	word-wrap:break-word;
	overflow-wrap:anywhere;
	font-size:15px;
	line-height:1.5;
}
.bv-support-chat__msg-label{
	padding-left:4px;
	font-size:.7rem;
	font-weight:700;
	letter-spacing:.01em;
	color:var(--bv-chat-muted);
}
.bv-support-chat__bubble a{color:inherit;text-decoration:underline}
.bv-support-chat__msg--visitor{justify-content:flex-end}
.bv-support-chat__msg--visitor .bv-support-chat__bubble{
	background:var(--bv-chat-green);
	color:#fff;
	border-bottom-right-radius:6px;
}
.bv-support-chat__msg--admin{justify-content:flex-start}
.bv-support-chat__msg--admin .bv-support-chat__bubble{
	background:var(--bv-chat-cream);
	color:var(--bv-chat-text);
	border-bottom-left-radius:6px;
}

.bv-support-chat__quick{padding:4px 0 8px}
.bv-support-chat__quick-hero{text-align:center;margin:4px 0 12px}
.bv-support-chat__quick-hero .bv-support-chat__intro{margin-bottom:0}
.bv-support-chat__quick-leaf{
	display:inline-flex;
	width:56px;
	height:56px;
	border-radius:50%;
	align-items:center;
	justify-content:center;
	background:var(--bv-chat-cream-2);
	margin-bottom:8px;
}
.bv-support-chat__quick-grid{
	display:grid;
	grid-template-columns:repeat(2, minmax(0,1fr));
	gap:10px;
}
.bv-support-chat__chip{
	appearance:none;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	min-height:52px;
	border:1px solid var(--bv-chat-border);
	border-radius:14px;
	background:#fff;
	color:var(--bv-chat-text);
	font-weight:700;
	cursor:pointer;
	padding:12px 10px;
}
.bv-support-chat__chip svg{color:var(--bv-chat-green);flex:0 0 auto;width:18px;height:18px}
.bv-support-chat__chip:hover,
.bv-support-chat__chip.is-selected{border-color:var(--bv-chat-green);background:var(--bv-chat-cream)}
.bv-support-chat__chip:focus-visible{
	outline:3px solid rgba(14,165,164,.45);
	outline-offset:2px;
}
.bv-support-chat__eta{
	margin:12px 0 0;
	padding:10px 12px;
	border-radius:14px;
	background:var(--bv-chat-cream-2);
	color:var(--bv-chat-green-deep);
	font-size:.82rem;
	font-weight:700;
}

.bv-support-chat__composer{
	display:flex;
	align-items:center;
	gap:8px;
	padding:10px 12px calc(12px + env(safe-area-inset-bottom));
	border-top:1px solid var(--bv-chat-border);
	background:#fff;
}
.bv-support-chat__composer .bv-support-chat__input{
	flex:1 1 auto;
	min-width:0;
	min-height:44px;
	margin:0;
	border-radius:999px;
	padding:8px 14px;
}
.bv-support-chat__icon-btn,
.bv-support-chat__send{
	appearance:none;
	flex:0 0 auto;
	width:44px;
	height:44px;
	border-radius:50%;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	padding:0;
	border:1px solid var(--bv-chat-border);
	background:#fff;
	color:var(--bv-chat-text);
}
.bv-support-chat__send{
	border:0;
	background:var(--bv-chat-green);
	color:#fff;
}
.bv-support-chat__icon-btn:hover{background:var(--bv-chat-cream)}
.bv-support-chat__send:hover{background:var(--bv-chat-green-deep)}
.bv-support-chat__icon-btn:focus-visible,
.bv-support-chat__send:focus-visible{
	outline:3px solid rgba(14,165,164,.45);
	outline-offset:2px;
}

@media (max-width: 640px){
	.bv-support-chat{
		right:max(10px, env(safe-area-inset-right));
		bottom:max(10px, env(safe-area-inset-bottom));
		width:min(420px, calc(100% - 20px));
	}
	.bv-support-chat__panel{
		max-height:calc(100dvh - 84px);
		bottom:52px;
	}
	.bv-support-chat__benefits{font-size:.66rem}
	.bv-support-chat__chip{font-size:.82rem}
}
@media (max-width: 360px){
	.bv-support-chat__online{display:none}
	.bv-support-chat__title{font-size:1.1rem}
	.bv-support-chat__avatar{width:40px;height:40px}
}

@media (prefers-reduced-motion: reduce){
	.bv-support-chat *{
		transition:none !important;
		transform:none !important;
	}
}
