.ykw-ai-assistant {
	--ykw-ai-bottom-offset: 76px;
	--ykw-ai-edge-gap: 20px;
	--ykw-ai-red: #d71920;
	--ykw-ai-red-dark: #b41117;
	--ykw-ai-white: #fff;
	--ykw-ai-black: #161616;
	--ykw-ai-muted: #656565;
	--ykw-ai-line: #d8d8d8;
	--ykw-ai-line-soft: #ececec;
	--ykw-ai-soft: #f7f7f7;
	--ykw-ai-online: #22c55e;
	position: fixed;
	display: block !important;
	right: max(var(--ykw-ai-edge-gap), env(safe-area-inset-right));
	bottom: calc(var(--ykw-ai-bottom-offset) + max(var(--ykw-ai-edge-gap), env(safe-area-inset-bottom)));
	width: 100px !important;
	height: 100px !important;
	min-width: 100px !important;
	min-height: 100px !important;
	max-width: 100px !important;
	max-height: 100px !important;
	aspect-ratio: 1 / 1 !important;
	overflow: visible !important;
	z-index: 99999;
	font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 1.45;
	color: var(--ykw-ai-black);
	text-align: left;
	text-transform: none;
	letter-spacing: normal;
	direction: ltr;
	isolation: isolate;
}

.ykw-ai-assistant,
.ykw-ai-assistant *,
.ykw-ai-assistant *::before,
.ykw-ai-assistant *::after {
	box-sizing: border-box;
}

.ykw-ai-assistant [hidden] {
	display: none !important;
}

.ykw-ai-assistant button,
.ykw-ai-assistant input {
	min-width: 0;
	margin: 0 !important;
	font: inherit !important;
	line-height: inherit !important;
	text-transform: none !important;
	letter-spacing: normal !important;
}

.ykw-ai-assistant button {
	appearance: none !important;
	-webkit-appearance: none !important;
	cursor: pointer;
	text-decoration: none !important;
}

.ykw-ai-assistant__launcher {
	position: relative;
	display: grid !important;
	width: 100px !important;
	height: 100px !important;
	min-width: 100px !important;
	min-height: 100px !important;
	max-width: 100px !important;
	max-height: 100px !important;
	aspect-ratio: 1 / 1 !important;
	padding: 0 !important;
	place-items: center;
	overflow: visible;
	color: var(--ykw-ai-black);
	background: transparent !important;
	border: 0 !important;
	border-radius: 50% !important;
	box-shadow: none !important;
	transform: translateY(0) scale(1);
	opacity: 1;
	visibility: visible;
	transition: transform 200ms ease, opacity 180ms ease, visibility 180ms ease;
}

.ykw-ai-assistant__launcher-icon {
	position: relative;
	z-index: 2;
	display: grid !important;
	width: 68px !important;
	height: 68px !important;
	min-width: 68px !important;
	min-height: 68px !important;
	max-width: 68px !important;
	max-height: 68px !important;
	aspect-ratio: 1 / 1 !important;
	place-items: center;
	overflow: hidden;
	background: var(--ykw-ai-white);
	border: 0;
	border-radius: 50% !important;
	box-shadow: 0 12px 30px rgb(22 22 22 / 22%), 0 3px 10px rgb(22 22 22 / 12%);
	transition: border-color 200ms ease, box-shadow 200ms ease, transform 200ms ease;
}

.ykw-ai-assistant__logo-image {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	min-width: 100% !important;
	min-height: 100% !important;
	max-width: 100% !important;
	max-height: 100% !important;
	aspect-ratio: 1 / 1 !important;
	padding: 4px !important;
	object-fit: contain !important;
	object-position: center;
	background: transparent !important;
	border: 0 !important;
	border-radius: inherit !important;
	box-shadow: none !important;
}

.ykw-ai-assistant__launcher-wave {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 68px;
	height: 68px;
	min-width: 68px;
	min-height: 68px;
	max-width: 68px;
	max-height: 68px;
	aspect-ratio: 1 / 1;
	z-index: 0;
	border: 1px solid rgb(215 25 32 / 42%);
	border-radius: 50%;
	opacity: 0;
	transform: translate(-50%, -50%) scale(1);
	pointer-events: none;
	animation: ykw-ai-live-wave 2.8s ease-out infinite;
}

.ykw-ai-assistant__launcher-wave--two {
	animation-delay: 0.92s;
}

.ykw-ai-assistant__launcher-wave--three {
	animation-delay: 1.84s;
}

.ykw-ai-assistant__launcher-tooltip {
	position: absolute;
	top: 50%;
	right: calc(50% + 44px);
	z-index: 4;
	width: max-content;
	max-width: 120px;
	padding: 6px 10px;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.2;
	color: var(--ykw-ai-white);
	white-space: nowrap;
	background: var(--ykw-ai-red);
	border: 1px solid var(--ykw-ai-red);
	border-radius: 999px;
	box-shadow: 0 8px 20px rgb(180 17 23 / 24%);
	transform: translateY(-50%);
	opacity: 1;
	visibility: visible;
	pointer-events: none;
	transition: transform 180ms ease, opacity 180ms ease, visibility 180ms ease;
}

.ykw-ai-assistant__launcher-tooltip::after {
	position: absolute;
	top: 50%;
	left: 100%;
	width: 0;
	height: 0;
	content: "";
	border: 5px solid transparent;
	border-left-color: var(--ykw-ai-red);
	transform: translateY(-50%);
}

.ykw-ai-assistant--open > .ykw-ai-assistant__launcher {
	pointer-events: none;
	transform: translateY(8px) scale(0.9);
	opacity: 0;
	visibility: hidden;
}

.ykw-ai-assistant__panel {
	position: absolute;
	right: 0;
	bottom: 0;
	display: flex;
	width: min(400px, calc(100vw - 40px));
	height: min(720px, calc(100vh - var(--ykw-ai-bottom-offset) - 52px));
	height: min(720px, calc(100dvh - var(--ykw-ai-bottom-offset) - 52px));
	min-height: 420px;
	overflow: hidden;
	flex-direction: column;
	color: var(--ykw-ai-black);
	background: var(--ykw-ai-white);
	border: 1px solid var(--ykw-ai-line-soft);
	border-radius: 26px;
	box-shadow: 0 28px 70px rgb(22 22 22 / 24%), 0 8px 24px rgb(22 22 22 / 12%);
	transform: translateY(14px) scale(0.985);
	transform-origin: bottom right;
	opacity: 0;
	pointer-events: none;
	transition: opacity 200ms ease, transform 240ms cubic-bezier(0.22, 1, 0.36, 1);
}

.ykw-ai-assistant--open > .ykw-ai-assistant__panel {
	transform: translateY(0) scale(1);
	opacity: 1;
	pointer-events: auto;
}

.ykw-ai-assistant__header {
	position: relative;
	display: flex;
	min-height: 82px;
	flex: 0 0 auto;
	align-items: center;
	gap: 12px;
	padding: 13px 14px 13px 16px;
	color: var(--ykw-ai-white);
	background: var(--ykw-ai-red);
	border: 0;
	border-radius: 25px 25px 0 0;
	box-shadow: 0 4px 14px rgb(180 17 23 / 15%);
}

.ykw-ai-assistant__avatar,
.ykw-ai-assistant__message-avatar {
	display: grid;
	flex: 0 0 auto;
	place-items: center;
	overflow: hidden;
	background: var(--ykw-ai-white);
	border-radius: 50%;
}

.ykw-ai-assistant__avatar {
	width: 50px !important;
	height: 50px !important;
	min-width: 50px !important;
	min-height: 50px !important;
	max-width: 50px !important;
	max-height: 50px !important;
	aspect-ratio: 1 / 1 !important;
	border: 2px solid rgb(255 255 255 / 80%);
	box-shadow: 0 5px 14px rgb(97 0 4 / 20%);
}

.ykw-ai-assistant__identity {
	min-width: 0;
	flex: 1 1 auto;
}

.ykw-ai-assistant__title {
	padding: 0;
	margin: 0 0 4px;
	font-family: inherit;
	font-size: 15px;
	font-weight: 780;
	line-height: 1.3;
	color: var(--ykw-ai-white);
	text-transform: none;
	letter-spacing: 0;
}

.ykw-ai-assistant__subtitle {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: 7px;
	padding: 0;
	margin: 0;
	overflow: hidden;
	font-family: inherit;
	font-size: 10.5px;
	font-weight: 560;
	line-height: 1.35;
	color: rgb(255 255 255 / 90%);
	text-transform: none;
	letter-spacing: 0;
}

.ykw-ai-assistant__status-dot {
	position: relative;
	width: 8px;
	height: 8px;
	flex: 0 0 auto;
	background: var(--ykw-ai-online);
	border: 1px solid rgb(255 255 255 / 72%);
	border-radius: 50%;
	box-shadow: 0 0 0 3px rgb(34 197 94 / 18%);
}

.ykw-ai-assistant__subtitle-copy {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ykw-ai-assistant__close {
	display: grid !important;
	width: 38px !important;
	height: 38px !important;
	min-width: 38px !important;
	min-height: 38px !important;
	max-width: 38px !important;
	max-height: 38px !important;
	flex: 0 0 auto;
	padding: 0 !important;
	place-items: center;
	font-size: 21px;
	font-weight: 350;
	line-height: 1;
	color: var(--ykw-ai-white) !important;
	background: transparent !important;
	border: 1px solid rgb(255 255 255 / 28%) !important;
	border-radius: 50% !important;
	transition: background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.ykw-ai-assistant__conversation {
	display: flex;
	min-width: 0;
	min-height: 0;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 13px;
	overflow-x: hidden;
	overflow-y: auto;
	padding: 19px 16px 24px;
	color: var(--ykw-ai-black);
	background: var(--ykw-ai-white);
	overscroll-behavior: contain;
	scrollbar-color: #c9c9c9 transparent;
	scrollbar-width: thin;
}

.ykw-ai-assistant__conversation::-webkit-scrollbar {
	width: 6px;
}

.ykw-ai-assistant__conversation::-webkit-scrollbar-track {
	background: transparent;
}

.ykw-ai-assistant__conversation::-webkit-scrollbar-thumb {
	background: #c9c9c9;
	border-radius: 999px;
}

.ykw-ai-assistant__message {
	display: flex;
	width: 100%;
	min-width: 0;
	align-items: flex-end;
	gap: 9px;
	animation: ykw-ai-message-in 210ms ease both;
}

.ykw-ai-assistant__message--assistant {
	justify-content: flex-start;
}

.ykw-ai-assistant__message--user {
	justify-content: flex-end;
}

.ykw-ai-assistant__message-avatar {
	width: 31px !important;
	height: 31px !important;
	min-width: 31px !important;
	min-height: 31px !important;
	max-width: 31px !important;
	max-height: 31px !important;
	aspect-ratio: 1 / 1 !important;
	border: 1px solid #dedede;
	box-shadow: 0 4px 10px rgb(22 22 22 / 10%);
}

.ykw-ai-assistant__message-avatar .ykw-ai-assistant__logo-image {
	padding: 3px;
}

.ykw-ai-assistant__avatar-fallback {
	display: grid;
	width: 100%;
	height: 100%;
	place-items: center;
	font-size: 10px;
	font-weight: 750;
	line-height: 1;
	color: var(--ykw-ai-black);
}

.ykw-ai-assistant__message-stack {
	display: flex;
	max-width: calc(100% - 40px);
	min-width: 0;
	flex-direction: column;
	gap: 9px;
}

.ykw-ai-assistant__bubble {
	width: fit-content;
	max-width: 82%;
	padding: 11px 14px;
	font-size: 13.5px;
	font-weight: 480;
	line-height: 1.5;
	white-space: pre-wrap;
	overflow-wrap: anywhere;
	word-break: normal;
}

.ykw-ai-assistant__message--assistant .ykw-ai-assistant__bubble {
	max-width: 100%;
	color: var(--ykw-ai-white);
	background: var(--ykw-ai-red);
	border: 1px solid var(--ykw-ai-red);
	border-radius: 8px 17px 17px;
	box-shadow: 0 7px 18px rgb(180 17 23 / 18%);
}

.ykw-ai-assistant__message--user .ykw-ai-assistant__bubble {
	max-width: 78%;
	color: var(--ykw-ai-black);
	background: var(--ykw-ai-white);
	border: 1px solid #d2d2d2;
	border-radius: 17px 8px 17px 17px;
	box-shadow: 0 6px 18px rgb(22 22 22 / 10%);
}

.ykw-ai-assistant__program-card {
	position: relative;
	width: calc(100% - 40px);
	min-width: 0;
	align-self: flex-end;
	padding: 14px 15px 14px 18px;
	overflow: hidden;
	color: var(--ykw-ai-black);
	background: var(--ykw-ai-white);
	border: 1px solid #dcdcdc;
	border-radius: 15px;
	box-shadow: 0 7px 20px rgb(22 22 22 / 8%);
	animation: ykw-ai-message-in 210ms ease both;
}

.ykw-ai-assistant__program-card::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 4px;
	content: "";
	background: var(--ykw-ai-red);
}

.ykw-ai-assistant__program-title {
	padding: 0;
	margin: 0;
	font-family: inherit;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.35;
	color: var(--ykw-ai-red);
	text-transform: none;
	letter-spacing: 0;
}

.ykw-ai-assistant__program-description {
	padding: 0;
	margin: 5px 0 0;
	font-family: inherit;
	font-size: 12.5px;
	font-weight: 450;
	line-height: 1.5;
	color: #555;
	text-transform: none;
	letter-spacing: 0;
	overflow-wrap: anywhere;
}

.ykw-ai-assistant__quick-replies {
	display: flex;
	width: 100%;
	min-width: 0;
	align-self: stretch;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 8px;
	animation: ykw-ai-message-in 220ms 40ms ease both;
}

.ykw-ai-assistant__quick-reply,
.ykw-ai-assistant__action,
.ykw-ai-assistant__navigation-button {
	display: inline-flex !important;
	min-width: 0 !important;
	height: auto !important;
	align-items: center;
	overflow-wrap: anywhere;
	word-break: normal;
	white-space: normal;
	transition: color 200ms ease, background 200ms ease, border-color 200ms ease, box-shadow 200ms ease, transform 200ms ease;
}

.ykw-ai-assistant__quick-reply {
	width: auto !important;
	max-width: 100% !important;
	min-height: 42px !important;
	flex: 0 1 auto;
	justify-content: center;
	gap: 7px;
	padding: 8px 14px !important;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.35;
	color: var(--ykw-ai-red) !important;
	text-align: center;
	background: var(--ykw-ai-white) !important;
	border: 1px solid #222 !important;
	border-radius: 999px !important;
	box-shadow: 0 3px 9px rgb(22 22 22 / 6%);
}

.ykw-ai-assistant__quick-reply-label {
	min-width: 0;
	flex: 0 1 auto;
	overflow-wrap: anywhere;
}

.ykw-ai-assistant__quick-reply-arrow {
	display: block !important;
	width: 15px !important;
	height: 15px !important;
	min-width: 15px !important;
	min-height: 15px !important;
	max-width: 15px !important;
	max-height: 15px !important;
	flex: 0 0 15px;
	color: currentcolor;
	overflow: visible !important;
}

.ykw-ai-assistant__quick-reply:disabled,
.ykw-ai-assistant__action:disabled,
.ykw-ai-assistant__navigation-button:disabled {
	cursor: default;
	opacity: 0.5;
}

.ykw-ai-assistant__actions {
	display: flex;
	width: 100%;
	min-width: 0;
	align-self: stretch;
	flex-wrap: wrap;
	gap: 8px;
	animation: ykw-ai-message-in 210ms 30ms ease both;
}

.ykw-ai-assistant__message-stack > .ykw-ai-assistant__actions {
	width: 100%;
	align-self: auto;
}

.ykw-ai-assistant__action {
	min-height: 40px !important;
	max-width: 100% !important;
	flex: 0 1 auto;
	justify-content: center;
	padding: 8px 15px !important;
	font-size: 12px;
	font-weight: 720;
	line-height: 1.3;
	color: var(--ykw-ai-red) !important;
	text-align: center;
	background: var(--ykw-ai-white) !important;
	border: 1px solid #222 !important;
	border-radius: 999px !important;
	box-shadow: 0 3px 9px rgb(22 22 22 / 6%);
}

.ykw-ai-assistant__action--primary {
	color: var(--ykw-ai-white) !important;
	background: var(--ykw-ai-red) !important;
	border-color: var(--ykw-ai-red) !important;
	box-shadow: 0 6px 15px rgb(180 17 23 / 17%);
}

.ykw-ai-assistant__navigation {
	display: flex;
	width: 100%;
	min-width: 0;
	align-self: stretch;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 6px;
	padding-top: 3px;
}

.ykw-ai-assistant__navigation-button {
	min-height: 34px !important;
	justify-content: center;
	gap: 5px;
	padding: 6px 12px !important;
	font-size: 10.5px;
	font-weight: 700;
	line-height: 1.2;
	color: var(--ykw-ai-red) !important;
	text-align: center;
	background: var(--ykw-ai-white) !important;
	border: 1px solid #a8a8a8 !important;
	border-radius: 999px !important;
	color: var(--ykw-ai-red) !important;
}

.ykw-ai-assistant__navigation-icon {
	display: block !important;
	width: 14px !important;
	height: 14px !important;
	min-width: 14px !important;
	min-height: 14px !important;
	max-width: 14px !important;
	max-height: 14px !important;
	flex: 0 0 14px;
	overflow: visible !important;
}

.ykw-ai-assistant__typing {
	display: flex;
	width: 60px;
	min-height: 39px;
	align-items: center;
	justify-content: center;
	gap: 5px;
	padding: 10px 13px;
}

.ykw-ai-assistant__typing-dot {
	width: 5px;
	height: 5px;
	background: var(--ykw-ai-white);
	border-radius: 50%;
	animation: ykw-ai-typing 1.1s infinite ease-in-out;
}

.ykw-ai-assistant__typing-dot:nth-of-type(2) {
	animation-delay: 120ms;
}

.ykw-ai-assistant__typing-dot:nth-of-type(3) {
	animation-delay: 240ms;
}

.ykw-ai-assistant__composer {
	position: relative;
	z-index: 1;
	display: block !important;
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	flex: 0 0 auto;
	padding: 12px 13px 13px;
	background: var(--ykw-ai-white);
	border-top: 1px solid var(--ykw-ai-line-soft);
	box-shadow: 0 -8px 20px rgb(22 22 22 / 4%);
}

.ykw-ai-assistant__input-shell {
	display: flex !important;
	width: 100% !important;
	height: auto !important;
	min-width: 0;
	align-items: center;
	gap: 8px;
	padding: 4px 4px 4px 15px;
	background: var(--ykw-ai-white);
	border: 1px solid #bdbdbd;
	border-radius: 999px;
	box-shadow: 0 4px 14px rgb(22 22 22 / 8%);
	transition: border-color 180ms ease, box-shadow 180ms ease;
}

.ykw-ai-assistant__input-shell:focus-within {
	border-color: var(--ykw-ai-red);
	box-shadow: 0 0 0 3px rgb(215 25 32 / 10%), 0 5px 16px rgb(22 22 22 / 8%);
}

.ykw-ai-assistant__input {
	appearance: none !important;
	-webkit-appearance: none !important;
	width: 100% !important;
	height: 40px !important;
	min-height: 40px !important;
	max-height: 40px !important;
	flex: 1 1 auto;
	padding: 0 !important;
	font-size: 13px;
	font-weight: 450;
	color: var(--ykw-ai-black);
	caret-color: var(--ykw-ai-red);
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	outline: 0 !important;
}

.ykw-ai-assistant__input::placeholder {
	color: #777;
	opacity: 1;
}

.ykw-ai-assistant__input:focus-visible {
	border: 0 !important;
	box-shadow: none !important;
	outline: 0 !important;
}

.ykw-ai-assistant__send {
	display: inline-flex !important;
	width: auto !important;
	min-width: 74px !important;
	max-width: none !important;
	height: 40px !important;
	min-height: 40px !important;
	max-height: 40px !important;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 0 13px !important;
	font-size: 11px;
	font-weight: 760;
	color: var(--ykw-ai-white) !important;
	background: var(--ykw-ai-red) !important;
	border: 1px solid var(--ykw-ai-red) !important;
	border-radius: 999px !important;
	box-shadow: 0 5px 13px rgb(180 17 23 / 16%);
	transition: color 180ms ease, background 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.ykw-ai-assistant__send:disabled {
	cursor: not-allowed;
	color: var(--ykw-ai-white) !important;
	background: #bcbcbc !important;
	border-color: #bcbcbc !important;
	box-shadow: none;
}

.ykw-ai-assistant__send-arrow {
	font-size: 15px;
	line-height: 1;
}

.ykw-ai-assistant__launcher:focus-visible,
.ykw-ai-assistant__close:focus-visible,
.ykw-ai-assistant__quick-reply:focus-visible,
.ykw-ai-assistant__action:focus-visible,
.ykw-ai-assistant__navigation-button:focus-visible,
.ykw-ai-assistant__send:focus-visible,
.ykw-ai-assistant__input:focus-visible {
	outline: 2px solid var(--ykw-ai-black);
	outline-offset: 3px;
}

.ykw-ai-assistant__header .ykw-ai-assistant__close:focus-visible {
	outline-color: var(--ykw-ai-white);
}

.ykw-ai-assistant__sr-only {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/*
 * Elementor and membership themes commonly attach high-specificity rules to
 * every button, image, form control, and SVG. Keep those rules outside the
 * component without resetting unrelated page elements.
 */
.ykw-ai-assistant[data-ykw-ai-assistant] > .ykw-ai-assistant__launcher,
.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__close,
.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__quick-reply,
.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__action,
.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__navigation-button,
.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__send {
	font-family: inherit !important;
	font-style: normal !important;
	text-decoration: none !important;
	text-transform: none !important;
}

.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__quick-reply,
.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__action,
.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__navigation-button {
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	border-radius: 999px !important;
}

.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__navigation-button {
	min-height: 34px !important;
	padding: 6px 12px !important;
}

.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__quick-reply,
.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__action {
	min-height: 40px !important;
	padding: 8px 14px !important;
	color: var(--ykw-ai-red) !important;
	background: var(--ykw-ai-white) !important;
	border: 1px solid #222 !important;
	box-shadow: 0 3px 9px rgb(22 22 22 / 6%) !important;
}

.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__action--primary {
	color: var(--ykw-ai-white) !important;
	background: var(--ykw-ai-red) !important;
	border-color: var(--ykw-ai-red) !important;
	box-shadow: 0 6px 15px rgb(180 17 23 / 17%) !important;
}

.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__navigation-button {
	color: var(--ykw-ai-red) !important;
	background: var(--ykw-ai-white) !important;
	border-color: #a8a8a8 !important;
	box-shadow: 0 3px 9px rgb(22 22 22 / 6%) !important;
}

.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__input[type="text"] {
	appearance: none !important;
	-webkit-appearance: none !important;
	width: 100% !important;
	height: 40px !important;
	min-height: 40px !important;
	max-height: 40px !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	outline: 0 !important;
}

.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__composer {
	display: block !important;
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
	padding: 12px 13px 13px !important;
	margin: 0 !important;
	background: var(--ykw-ai-white) !important;
	border: 0 !important;
	border-top: 1px solid var(--ykw-ai-line-soft) !important;
	border-radius: 0 !important;
	box-shadow: 0 -8px 20px rgb(22 22 22 / 4%) !important;
}

.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__send {
	display: inline-flex !important;
	width: auto !important;
	height: 40px !important;
	min-width: 74px !important;
	min-height: 40px !important;
	max-width: none !important;
	max-height: 40px !important;
	padding: 0 13px !important;
	color: var(--ykw-ai-white) !important;
	background: var(--ykw-ai-red) !important;
	border: 1px solid var(--ykw-ai-red) !important;
	border-radius: 999px !important;
	box-shadow: 0 5px 13px rgb(180 17 23 / 16%) !important;
}

.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__send:disabled {
	cursor: not-allowed;
	opacity: 0.55;
	box-shadow: none !important;
}

.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__close {
	display: grid !important;
	width: 38px !important;
	height: 38px !important;
	min-width: 38px !important;
	min-height: 38px !important;
	max-width: 38px !important;
	max-height: 38px !important;
	padding: 0 !important;
	color: var(--ykw-ai-white) !important;
	background: transparent !important;
	border: 1px solid rgb(255 255 255 / 28%) !important;
	border-radius: 50% !important;
	box-shadow: none !important;
}

.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__logo-image {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	min-width: 100% !important;
	min-height: 100% !important;
	max-width: 100% !important;
	max-height: 100% !important;
	aspect-ratio: 1 / 1 !important;
	object-fit: contain !important;
}

.ykw-ai-assistant[data-ykw-ai-assistant] svg {
	display: block !important;
	overflow: visible !important;
	fill: none;
	stroke: currentcolor;
}

.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__quick-reply-arrow {
	width: 15px !important;
	height: 15px !important;
	min-width: 15px !important;
	min-height: 15px !important;
	max-width: 15px !important;
	max-height: 15px !important;
}

.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__navigation-icon {
	width: 14px !important;
	height: 14px !important;
	min-width: 14px !important;
	min-height: 14px !important;
	max-width: 14px !important;
	max-height: 14px !important;
}

@media (hover: hover) and (pointer: fine) {
	.ykw-ai-assistant__launcher:hover .ykw-ai-assistant__launcher-icon,
	.ykw-ai-assistant__launcher:focus-visible .ykw-ai-assistant__launcher-icon {
		border-color: var(--ykw-ai-red-dark);
		box-shadow: 0 15px 34px rgb(22 22 22 / 25%), 0 4px 12px rgb(22 22 22 / 14%), inset 0 0 0 2px var(--ykw-ai-white);
		transform: translateY(-2px);
	}

	.ykw-ai-assistant__launcher:hover .ykw-ai-assistant__launcher-tooltip,
	.ykw-ai-assistant__launcher:focus-visible .ykw-ai-assistant__launcher-tooltip {
		transform: translate(0, -50%);
		opacity: 1;
		visibility: visible;
	}

	.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__close:hover {
		color: var(--ykw-ai-white) !important;
		background: rgb(255 255 255 / 14%) !important;
		border-color: rgb(255 255 255 / 34%) !important;
		transform: rotate(3deg);
	}

	.ykw-ai-assistant__quick-reply:hover:not(:disabled),
	.ykw-ai-assistant__action:hover:not(:disabled),
	.ykw-ai-assistant__navigation-button:hover:not(:disabled) {
		color: var(--ykw-ai-white) !important;
		background: var(--ykw-ai-red) !important;
		border-color: var(--ykw-ai-red) !important;
		box-shadow: 0 6px 15px rgb(180 17 23 / 16%) !important;
		transform: translateY(-1px);
	}

	.ykw-ai-assistant__action--primary:hover:not(:disabled) {
		color: var(--ykw-ai-white) !important;
		background: var(--ykw-ai-red-dark) !important;
		border-color: var(--ykw-ai-red-dark) !important;
		box-shadow: 0 8px 18px rgb(180 17 23 / 20%) !important;
	}

	.ykw-ai-assistant__send:hover:not(:disabled) {
		color: #fffdfd !important;
		background: var(--ykw-ai-red-dark) !important;
		border-color: var(--ykw-ai-red-dark) !important;
		box-shadow: 0 7px 16px rgb(180 17 23 / 20%) !important;
		transform: translateY(-1px);
	}
}

@keyframes ykw-ai-live-wave {
	0% {
		transform: translate(-50%, -50%) scale(0.92);
		opacity: 0;
	}

	18% {
		opacity: 0.32;
	}

	100% {
		transform: translate(-50%, -50%) scale(1.48);
		opacity: 0;
	}
}

@keyframes ykw-ai-message-in {
	from {
		transform: translateY(5px);
		opacity: 0;
	}

	to {
		transform: translateY(0);
		opacity: 1;
	}
}

@keyframes ykw-ai-typing {
	0%,
	60%,
	100% {
		transform: translateY(0);
		opacity: 0.48;
	}

	30% {
		transform: translateY(-3px);
		opacity: 1;
	}
}

@media (max-width: 640px) {
	body.ykw-ai-assistant-is-open {
		overflow: hidden;
	}

	.ykw-ai-assistant {
		--ykw-ai-edge-gap: 12px;
	}

	.ykw-ai-assistant__panel {
		position: fixed;
		right: max(8px, env(safe-area-inset-right));
		bottom: calc(var(--ykw-ai-bottom-offset) + max(8px, env(safe-area-inset-bottom)));
		left: max(8px, env(safe-area-inset-left));
		width: auto;
		height: min(92vh, calc(100vh - var(--ykw-ai-bottom-offset) - 16px));
		height: min(92dvh, calc(100dvh - var(--ykw-ai-bottom-offset) - 16px));
		min-height: 0;
		border-radius: 24px 24px 14px 14px;
		transform-origin: bottom center;
	}

	.ykw-ai-assistant__header {
		min-height: 76px;
		padding: 11px 12px;
		border-radius: 23px 23px 0 0;
	}

	.ykw-ai-assistant__avatar {
		width: 45px !important;
		height: 45px !important;
		min-width: 45px !important;
		min-height: 45px !important;
		max-width: 45px !important;
		max-height: 45px !important;
	}

	.ykw-ai-assistant__conversation {
		padding: 16px 12px 20px;
	}

	.ykw-ai-assistant__quick-reply {
		min-height: 43px;
	}

	.ykw-ai-assistant[data-ykw-ai-assistant] .ykw-ai-assistant__composer {
		padding: 10px max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left)) !important;
	}
}

@media (max-width: 360px) {
	.ykw-ai-assistant__title {
		font-size: 14px;
	}

	.ykw-ai-assistant__subtitle {
		font-size: 10px;
	}

	.ykw-ai-assistant__subtitle-copy {
		max-width: 160px;
	}

	.ykw-ai-assistant__quick-reply {
		width: 100%;
		flex-basis: 100%;
	}

	.ykw-ai-assistant__input-shell {
		padding-left: 12px;
	}

	.ykw-ai-assistant__send {
		min-width: 70px;
		padding: 0 11px;
	}
}

@media (max-height: 560px) and (min-width: 641px) {
	.ykw-ai-assistant__panel {
		min-height: 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ykw-ai-assistant__launcher,
	.ykw-ai-assistant__launcher-icon,
	.ykw-ai-assistant__launcher-wave,
	.ykw-ai-assistant__launcher-tooltip,
	.ykw-ai-assistant__panel,
	.ykw-ai-assistant__message,
	.ykw-ai-assistant__quick-replies,
	.ykw-ai-assistant__actions,
	.ykw-ai-assistant__typing-dot {
		animation: none;
		transition: none;
	}

	.ykw-ai-assistant__launcher-wave {
		opacity: 0;
	}

	.ykw-ai-assistant__conversation {
		scroll-behavior: auto;
	}
}
