.arkb-chat{--arkb-line:#e3e6ea;--arkb-ink:#14181f;--arkb-mute:#5b6570;--arkb-x:22px;--arkb-y:22px;position:fixed;bottom:var(--arkb-y);z-index:999999;font-size:15px;line-height:1.55;color:var(--arkb-ink);-webkit-font-smoothing:antialiased}
.arkb-chat--right{right:var(--arkb-x)}
.arkb-chat--left{left:var(--arkb-x)}

/* Launcher */
/* Themes (Elementor/Hello and most others) style bare `button` globally with a
   background, border, padding and square corners. Those rules load after ours,
   so the launcher needs ID-level specificity plus hard resets to keep its shape. */
#arkb-chat .arkb-chat-launcher{
	all:unset !important;
	box-sizing:border-box !important;
	position:relative !important;
	display:flex !important;
	align-items:center !important;
	justify-content:center !important;
	width:64px !important;
	height:56px !important;
	min-width:0 !important;
	min-height:0 !important;
	margin:0 0 0 auto !important;
	padding:0 !important;
	border:0 !important;
	outline:0 !important;
	background:var(--arkb-brand) !important;
	background-image:none !important;
	color:#fff !important;
	cursor:pointer !important;
	overflow:visible !important;
	-webkit-appearance:none !important;
	appearance:none !important;
	box-shadow:none !important;
	border-radius:20px 20px 6px 20px !important;
	filter:drop-shadow(0 6px 16px rgba(0,0,0,.24));
	transition:transform .16s ease,filter .16s ease}

#arkb-chat.arkb-chat--left .arkb-chat-launcher{margin:0 auto 0 0 !important;border-radius:20px 20px 20px 6px !important}
#arkb-chat .arkb-chat-launcher:hover{transform:scale(1.06);filter:drop-shadow(0 9px 22px rgba(0,0,0,.3))}
#arkb-chat .arkb-chat-launcher:focus-visible{outline:3px solid var(--arkb-brand) !important;outline-offset:3px !important}

/* The tail. `all:unset` on the parent does not reach pseudo-elements, but a
   theme may still null out button::after, so restate content explicitly. */
#arkb-chat .arkb-chat-launcher::after{content:"" !important;display:block !important;position:absolute !important;bottom:-9px !important;width:0 !important;height:0 !important;padding:0 !important;margin:0 !important;background:none !important;border-top:12px solid var(--arkb-brand) !important;border-bottom:0 !important}
#arkb-chat.arkb-chat--right .arkb-chat-launcher::after{right:2px !important;left:auto !important;border-left:14px solid transparent !important;border-right:0 !important}
#arkb-chat.arkb-chat--left .arkb-chat-launcher::after{left:2px !important;right:auto !important;border-right:14px solid transparent !important;border-left:0 !important}

/* Launcher stays a speech bubble in both states — the header X is the close control. */
#arkb-chat .arkb-chat-launcher svg{width:24px !important;height:auto !important;margin-bottom:2px !important;display:block !important}

/* While the panel is open the launcher is hidden entirely — the header X closes.
   (The launcher precedes the panel in the DOM, so leaving it visible stacked it
   above the dialog.) */
#arkb-chat.is-open .arkb-chat-launcher{display:none !important}

#arkb-chat .arkb-chat-panel{width:378px;max-width:calc(100vw - 32px);height:540px;max-height:calc(100vh - 130px);background:#fff;border:1px solid var(--arkb-line);border-radius:14px;box-shadow:0 18px 50px rgba(0,0,0,.2);display:flex;flex-direction:column;overflow:hidden;margin:0;transform-origin:bottom right;animation:arkb-pop .16s ease-out}
#arkb-chat.arkb-chat--left .arkb-chat-panel{transform-origin:bottom left}
@keyframes arkb-pop{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
#arkb-chat .arkb-chat-panel[hidden]{display:none !important}

#arkb-chat .arkb-chat-head{background:var(--arkb-brand);color:#fff;padding:14px 16px;display:flex !important;flex-direction:row !important;align-items:center;justify-content:space-between;gap:10px;direction:ltr;text-align:left;flex:0 0 auto}
#arkb-chat .arkb-chat-headtext{flex:1 1 auto;min-width:0}
#arkb-chat .arkb-chat-name{font-weight:700;font-size:16px;line-height:1.25;color:#fff}
#arkb-chat .arkb-chat-sub{font-size:12px;opacity:.85;margin-top:2px;color:#fff}
#arkb-chat .arkb-chat-x{all:unset !important;box-sizing:border-box !important;flex:0 0 auto !important;order:2 !important;display:flex !important;align-items:center !important;justify-content:center !important;width:30px !important;height:30px !important;min-width:0 !important;min-height:0 !important;padding:0 !important;margin:0 !important;border:0 !important;border-radius:6px !important;background:transparent !important;color:#fff !important;cursor:pointer !important;opacity:.85;-webkit-appearance:none !important;appearance:none !important;box-shadow:none !important}
#arkb-chat .arkb-chat-x:hover{opacity:1;background:rgba(255,255,255,.16) !important}
#arkb-chat .arkb-chat-x:focus-visible{outline:2px solid #fff !important;outline-offset:1px !important}
#arkb-chat .arkb-chat-x svg{width:19px !important;height:19px !important;display:block !important}

.arkb-chat-log{flex:1 1 auto;overflow-y:auto;padding:16px;background:#f7f8fa;display:flex;flex-direction:column;gap:10px}
.arkb-msg{max-width:88%;padding:10px 13px;border-radius:12px;font-size:14.5px;word-wrap:break-word;overflow-wrap:anywhere}
.arkb-msg p{margin:0 0 8px}
.arkb-msg p:last-child{margin-bottom:0}
.arkb-msg ul{margin:6px 0;padding-left:18px}
.arkb-msg a{color:inherit;text-decoration:underline}
.arkb-msg--bot{align-self:flex-start;background:#fff;border:1px solid var(--arkb-line);border-bottom-left-radius:4px}
.arkb-msg--user{align-self:flex-end;background:var(--arkb-brand);color:#fff;border-bottom-right-radius:4px}
.arkb-msg--err{align-self:flex-start;background:#fff4f4;border:1px solid #f2c9c9;color:#8a1f1f;border-bottom-left-radius:4px}

.arkb-typing{align-self:flex-start;background:#fff;border:1px solid var(--arkb-line);border-radius:12px;border-bottom-left-radius:4px;padding:13px;display:flex;gap:4px}
.arkb-typing span{width:6px;height:6px;border-radius:50%;background:#b9c0c8;animation:arkb-blink 1.3s infinite}
.arkb-typing span:nth-child(2){animation-delay:.18s}
.arkb-typing span:nth-child(3){animation-delay:.36s}
@keyframes arkb-blink{0%,60%,100%{opacity:.3}30%{opacity:1}}

.arkb-chat-prompts{display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px 0;background:#f7f8fa;flex:0 0 auto}
.arkb-chat-prompts:empty{display:none}
.arkb-prompt{font-size:12.5px;padding:6px 11px;border:1px solid var(--arkb-line);background:#fff;border-radius:999px;cursor:pointer;color:var(--arkb-mute);text-align:left}
.arkb-prompt:hover{border-color:var(--arkb-brand);color:var(--arkb-brand)}

.arkb-chat-input{display:flex;align-items:flex-end;gap:8px;padding:10px 12px;border-top:1px solid var(--arkb-line);background:#fff;flex:0 0 auto}
.arkb-chat-input textarea{flex:1;border:1px solid var(--arkb-line);border-radius:10px;padding:9px 11px;font:inherit;font-size:14.5px;resize:none;max-height:110px;background:#fff;color:var(--arkb-ink)}
.arkb-chat-input textarea:focus{outline:2px solid var(--arkb-brand);outline-offset:1px;border-color:transparent}
.arkb-chat-input button{width:38px;height:38px;flex:0 0 38px;border:0;border-radius:10px;background:var(--arkb-brand);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}
.arkb-chat-input button:disabled{opacity:.5;cursor:default}
.arkb-chat-input button svg{width:18px;height:18px}

.arkb-chat-foot{font-size:11.5px;color:var(--arkb-mute);padding:8px 12px 10px;text-align:center;background:#fff;border-top:1px solid #f0f2f4;flex:0 0 auto}
.arkb-chat-foot a{color:var(--arkb-brand);font-weight:600;text-decoration:none}
.arkb-chat-foot a:hover{text-decoration:underline}

@media(max-width:480px){
	.arkb-chat{bottom:16px}
	.arkb-chat--right{right:16px}
	.arkb-chat--left{left:16px}
	.arkb-chat-panel{width:calc(100vw - 32px);height:calc(100vh - 120px)}
}
