.fq-pritvi {
	--pritvi-ink: #17214A;
	--pritvi-muted: #4B5563;
	--pritvi-line: #E8ECF5;
	--pritvi-soft: #F8FAFF;
	--pritvi-accent: #2F57D8;
	--pritvi-accent-2: #7B61FF;
}

.fq-pritvi--page {
	max-width: 720px;
	margin: 0 auto;
	padding: 28px 16px 56px;
}

.fq-pritvi__hero {
	display: flex;
	gap: 16px;
	align-items: flex-start;
	margin: 0 0 20px;
}

.fq-pritvi__avatar {
	flex: 0 0 auto;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	overflow: hidden;
	padding: 0;
	background: linear-gradient(135deg, #2F57D8 0%, #7B61FF 58%, #00C3FF 100%);
	box-shadow: 0 10px 24px rgba(47, 87, 216, 0.28);
}

.fq-pritvi__avatar picture,
.fq-pritvi-fab__mark picture {
	display: block;
	width: 100%;
	height: 100%;
}

.fq-pritvi__avatar img,
.fq-pritvi-fab__mark img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fq-pritvi__avatar--sm {
	width: 36px;
	height: 36px;
	box-shadow: none;
}

.fq-pritvi__kicker {
	margin: 0 0 6px;
	font-size: 11px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-weight: 800;
	color: var(--pritvi-accent);
}

.fq-pritvi__title {
	margin: 0 0 8px;
	font-size: 1.85rem;
	line-height: 1.15;
	color: var(--pritvi-ink);
}

.fq-pritvi__lede {
	margin: 0;
	font-size: 1.02rem;
	line-height: 1.6;
	color: var(--pritvi-muted);
}

.fq-pritvi__stage {
	background: #fff;
	border: 1px solid var(--pritvi-line);
	border-radius: 24px;
	padding: 14px 14px 12px;
	box-shadow: 0 18px 40px rgba(23, 33, 74, 0.08);
}

.fq-pritvi__toolbar {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 4px 6px 10px;
	font-size: 0.82rem;
	font-weight: 700;
	color: var(--pritvi-muted);
}

.fq-pritvi__live {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #10B981;
	box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.16);
}

.fq-pritvi__new {
	margin-left: auto;
	border: 0;
	background: transparent;
	color: var(--pritvi-accent);
	font: inherit;
	font-weight: 700;
	cursor: pointer;
	padding: 4px 6px;
}

.fq-pritvi__log {
	min-height: 220px;
	max-height: min(52vh, 520px);
	overflow-y: auto;
	overflow-x: hidden;
	padding: 4px 14px 8px 4px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	overscroll-behavior: contain;
	scrollbar-width: thin;
	scrollbar-gutter: stable;
}

.fq-pritvi__bubble {
	max-width: 92%;
	padding: 12px 14px;
	border-radius: 16px;
	font-size: 0.98rem;
	line-height: 1.55;
	color: var(--pritvi-ink);
	white-space: pre-wrap;
	overflow-wrap: anywhere;
}

.fq-pritvi__bubble p {
	margin: 0;
}

.fq-pritvi__bubble a {
	color: var(--pritvi-accent);
	font-weight: 700;
	word-break: break-all;
}

.fq-pritvi__bubble--agent {
	align-self: flex-start;
	background: var(--pritvi-soft);
	border: 1px solid var(--pritvi-line);
}

.fq-pritvi__bubble--user {
	align-self: flex-end;
	background: linear-gradient(135deg, #2F57D8 0%, #7B61FF 100%);
	color: #fff;
	margin-right: 6px;
}

.fq-pritvi__bubble--wait {
	align-self: flex-start;
	background: transparent;
	border: 0;
	padding: 6px 8px;
	font-size: 0.82rem;
	color: var(--pritvi-muted);
	opacity: 1;
}

.fq-pritvi__composer {
	flex-shrink: 0;
}

.fq-pritvi__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 8px 4px 4px;
}

.fq-pritvi__chips[hidden],
.fq-pritvi__chips.is-empty {
	display: none !important;
}

.fq-pritvi__chip {
	border: 1px solid #D7DDEA;
	background: #fff;
	color: var(--pritvi-ink);
	border-radius: 999px;
	padding: 8px 12px;
	font: inherit;
	font-size: 0.88rem;
	font-weight: 700;
	cursor: pointer;
}

.fq-pritvi__chip:hover,
.fq-pritvi__chip:focus {
	border-color: var(--pritvi-accent);
	color: var(--pritvi-accent);
}

.fq-pritvi__form {
	display: flex;
	gap: 8px;
	align-items: flex-end;
	padding: 8px 4px 0;
}

.fq-pritvi__form textarea {
	flex: 1;
	min-height: 48px;
	max-height: 96px;
	resize: none !important;
	overflow-y: auto;
	box-sizing: border-box;
	padding: 12px 14px;
	border: 1px solid #D7DDEA;
	border-radius: 14px;
	font: inherit;
	font-size: 1rem;
	line-height: 1.35;
	color: var(--pritvi-ink);
	background: var(--pritvi-soft);
	field-sizing: content;
}

.fq-pritvi__send {
	flex: 0 0 auto;
	height: 48px;
	min-height: 48px;
	min-width: 72px;
	border: 0;
	border-radius: 999px;
	background: linear-gradient(135deg, #2F57D8 0%, #7B61FF 100%);
	color: #fff;
	font-weight: 800;
	font-size: 0.92rem;
	cursor: pointer;
	padding: 0 16px;
}

.fq-pritvi__send:disabled {
	opacity: 0.55;
	cursor: not-allowed;
}

.fq-pritvi__hint {
	margin: 6px 8px 0;
	padding-bottom: 2px;
	font-size: 0.75rem;
	line-height: 1.4;
	color: #9AA3B2;
	flex-shrink: 0;
}

.fq-pritvi__fine {
	margin: 14px 4px 0;
	font-size: 0.88rem;
	line-height: 1.5;
	color: #6B7280;
}

.fq-pritvi__fine a {
	color: var(--pritvi-accent);
	font-weight: 700;
}

.u-sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.fq-pritvi-fab {
	position: fixed;
	right: max(14px, env(safe-area-inset-right, 0px));
	bottom: max(66px, calc(14px + 52px + env(safe-area-inset-bottom, 0px)));
	z-index: 10040;
	display: flex;
	align-items: center;
	gap: 8px;
	min-height: 44px;
	padding: 0 14px 0 6px;
	border: none;
	border-radius: 999px;
	cursor: pointer;
	color: #fff;
	background: linear-gradient(135deg, #2F57D8 0%, #7B61FF 100%);
	box-shadow:
		0 8px 22px rgba(79, 110, 255, 0.42),
		0 2px 6px rgba(0, 0, 0, 0.14);
}

.fq-pritvi-fab__mark {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	overflow: hidden;
	padding: 0;
	background: rgba(255, 255, 255, 0.18);
}

.fq-pritvi-fab__label {
	font-weight: 800;
	font-size: 0.88rem;
	white-space: nowrap;
}

.fq-landing-v2-page:has(.fq-v2-ad--sticky) .fq-pritvi-fab {
	bottom: max(130px, calc(78px + 52px + env(safe-area-inset-bottom, 0px)));
}

.fq-pritvi-panel {
	position: fixed;
	right: max(14px, env(safe-area-inset-right, 0px));
	bottom: max(122px, calc(70px + 52px + env(safe-area-inset-bottom, 0px)));
	z-index: 10042;
	width: min(400px, calc(100vw - 28px));
	height: min(580px, calc(100dvh - 148px));
	max-height: min(580px, calc(100dvh - 148px));
	display: flex;
	flex-direction: column;
	overflow: hidden;
	overscroll-behavior: contain;
	background: #fff;
	border: 1px solid var(--pritvi-line);
	border-radius: 22px;
	box-shadow: 0 22px 50px rgba(23, 33, 74, 0.2);
	padding-bottom: max(10px, env(safe-area-inset-bottom, 0px));
}

.fq-landing-v2-page:has(.fq-v2-ad--sticky) .fq-pritvi-panel {
	bottom: max(186px, calc(132px + 52px + env(safe-area-inset-bottom, 0px)));
	height: min(500px, calc(100dvh - 220px));
	max-height: min(500px, calc(100dvh - 220px));
}

.fq-pritvi-panel[hidden] {
	display: none !important;
}

.fq-pritvi-panel__head {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 12px 8px;
	border-bottom: 1px solid var(--pritvi-line);
	flex-shrink: 0;
}

.fq-pritvi-panel__name {
	font-weight: 800;
	color: var(--pritvi-ink);
}

.fq-pritvi-panel__sub {
	font-size: 0.75rem;
	color: var(--pritvi-muted);
}

.fq-pritvi-panel__open {
	margin-left: auto;
	font-size: 0.78rem;
	font-weight: 700;
	color: var(--pritvi-accent);
	text-decoration: none;
}

.fq-pritvi-panel__close {
	border: 0;
	background: transparent;
	font-size: 1.4rem;
	line-height: 1;
	cursor: pointer;
	color: #6B7280;
	padding: 4px 8px;
}

.fq-pritvi--widget .fq-pritvi__stage {
	border: 0;
	box-shadow: none;
	border-radius: 0;
	flex: 1 1 auto;
	min-height: 0;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	padding: 8px 10px 8px;
}

.fq-pritvi--widget .fq-pritvi__toolbar,
.fq-pritvi--widget .fq-pritvi__composer,
.fq-pritvi--widget .fq-pritvi__chips,
.fq-pritvi--widget .fq-pritvi__form,
.fq-pritvi--widget .fq-pritvi__hint,
.fq-pritvi--widget .fq-pritvi__fine--widget {
	flex-shrink: 0;
}

.fq-pritvi--widget .fq-pritvi__log {
	flex: 1 1 auto;
	min-height: 0;
	max-height: none;
}

.fq-pritvi--widget .fq-pritvi__chips {
	flex-wrap: nowrap;
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: thin;
	-webkit-overflow-scrolling: touch;
}

.fq-pritvi--widget .fq-pritvi__chip {
	flex: 0 0 auto;
	white-space: nowrap;
}

.fq-pritvi--widget .fq-pritvi__chips[hidden],
.fq-pritvi--widget .fq-pritvi__chips.is-empty {
	display: none !important;
}

.fq-pritvi__fine--widget {
	margin: 6px 4px 2px;
	font-size: 0.72rem;
	line-height: 1.4;
	flex-shrink: 0;
}

@media (max-width: 640px) {
	.fq-pritvi-fab__label {
		display: none;
	}
	.fq-pritvi-fab {
		padding: 0;
		width: 44px;
		height: 44px;
		justify-content: center;
	}
	.fq-pritvi-panel {
		right: 10px;
		left: 10px;
		width: auto;
		bottom: max(122px, calc(70px + 52px + env(safe-area-inset-bottom, 0px)));
	}
}

body.fq-dark .fq-pritvi {
	--pritvi-ink: #F3F5FF;
	--pritvi-muted: #AEB8D2;
	--pritvi-line: rgba(157, 194, 255, 0.18);
	--pritvi-soft: #10162B;
}

body.fq-dark .fq-pritvi__stage,
body.fq-dark .fq-pritvi-panel {
	background: #161B33;
}

body.fq-dark .fq-pritvi__form textarea,
body.fq-dark .fq-pritvi__chip {
	background: #10162B;
	border-color: rgba(157, 194, 255, 0.22);
	color: #F3F5FF;
}

body.fq-dark .fq-pritvi__bubble--agent {
	background: #10162B;
}

@media (prefers-reduced-motion: reduce) {
	.fq-pritvi-fab,
	.fq-pritvi-panel {
		transition: none;
	}
}
