/* Contact-page "answers while you type" assistant — mirrors the help-center Ask-AI panel. */
.contact-assistant {
	--ca-brand: #6d4aff;
	--ca-brand-strong: #5733d1;
	--ca-ink: #1a2338;
	--ca-text: #46516a;
	--ca-muted: #6a7488;
	--ca-line: #e2e5ee;
	margin: 4px 0 2px;
	padding: 16px;
	border: 1px solid #e0dbff;
	border-radius: 14px;
	background: linear-gradient(180deg, #faf9ff, #fff);
	box-shadow: 0 10px 30px rgba(93, 63, 210, .07);
}
.contact-assistant__head { display: flex; align-items: flex-start; gap: 11px; }
.contact-assistant__spark {
	display: grid; width: 34px; height: 34px; flex: 0 0 auto; place-items: center;
	color: #fff; border-radius: 9px; font-size: 16px;
	background: linear-gradient(145deg, #8f70ff, #6d4aff);
}
.contact-assistant__intro strong { display: block; color: var(--ca-ink); font-size: 14px; font-weight: 750; }
.contact-assistant__intro small { display: block; margin-top: 3px; color: var(--ca-muted); font-size: 12.5px; line-height: 1.5; }
.contact-assistant__status {
	margin: 13px 0 9px; color: var(--ca-brand-strong);
	font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
}
.contact-assistant__body { display: grid; gap: 8px; }

.contact-assistant__ask {
	display: grid; grid-template-columns: 40px minmax(0, 1fr); align-items: center; gap: 12px;
	width: 100%; padding: 11px 13px; text-align: left; cursor: pointer;
	color: var(--ca-ink); border: 1px solid #ddd6ff; border-radius: 11px;
	background: linear-gradient(90deg, #f2eeff, #fff); font: inherit;
	transition: background .16s ease, border-color .16s ease;
}
.contact-assistant__ask:hover { background: #ece5ff; border-color: #c3b4ff; }
.contact-assistant__ask-icon {
	display: grid; width: 40px; height: 40px; place-items: center; color: #fff; font-size: 17px;
	border-radius: 9px; background: linear-gradient(145deg, #8f70ff, #6d4aff);
}
.contact-assistant__ask-copy { min-width: 0; }
.contact-assistant__ask-copy strong { display: block; color: var(--ca-brand-strong); font-size: 13.5px; font-weight: 800; }
.contact-assistant__ask-copy small { display: block; margin-top: 2px; color: var(--ca-muted); font-size: 12px; }

.contact-assistant__guides { display: grid; gap: 7px; }
.contact-assistant__guide {
	display: block; padding: 11px 13px; color: var(--ca-ink);
	border: 1px solid var(--ca-line); border-radius: 10px; background: #fff;
	transition: border-color .16s ease, background .16s ease;
}
.contact-assistant__guide:hover { border-color: #c3b4ff; background: #faf9ff; }
.contact-assistant__guide strong { display: block; color: #202a3b; font-size: 13.5px; font-weight: 720; }
.contact-assistant__guide small {
	display: block; margin-top: 3px; color: var(--ca-text); font-size: 12.5px; line-height: 1.45;
	overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
}
.contact-assistant__tag {
	display: inline-block; margin-top: 7px; padding: 3px 8px; color: #59657a;
	border: 1px solid #e1e5ed; border-radius: 999px; font-size: 10.5px; font-weight: 700;
}
.contact-assistant__all {
	display: inline-block; margin-top: 4px; color: var(--ca-brand-strong); font-size: 12.5px; font-weight: 750;
}
.contact-assistant__all:hover { text-decoration: underline; }
.contact-assistant__empty { padding: 10px 4px; color: var(--ca-muted); font-size: 13px; }

.contact-assistant__ai {
	padding: 13px; border: 1px solid #e0dbff; border-radius: 11px; background: #fff;
}
.contact-assistant__ai-head { display: flex; align-items: center; gap: 9px; margin-bottom: 9px; }
.contact-assistant__ai-head strong { color: var(--ca-ink); font-size: 14px; font-weight: 800; }
.contact-assistant__ai-badge {
	padding: 3px 8px; color: var(--ca-brand-strong); border: 1px solid #ddd6ff;
	border-radius: 999px; background: #f0edff; font-size: 10.5px; font-weight: 700;
}
.contact-assistant__ai-loading { display: flex; align-items: center; gap: 10px; color: var(--ca-muted); font-size: 13.5px; }
.contact-assistant__spinner {
	display: inline-block; width: 15px; height: 15px; border: 2px solid #ddd6ff;
	border-top-color: #6d4aff; border-radius: 50%; animation: ca-spin .7s linear infinite;
}
.contact-assistant__ai-body { color: var(--ca-text); font-size: 13.5px; line-height: 1.62; }
.contact-assistant__ai-body p { margin: 0 0 9px; }
.contact-assistant__ai-body p:last-child { margin-bottom: 0; }
.contact-assistant__ai-body ul, .contact-assistant__ai-body ol { margin: 0 0 9px; padding-left: 19px; }
.contact-assistant__ai-body li { margin: 3px 0; }
.contact-assistant__ai-body a { color: var(--ca-brand-strong); text-decoration: underline; }
.contact-assistant__ai-body code { padding: 1px 5px; border-radius: 5px; background: #f0edff; font-size: 12.5px; }
.contact-assistant__sources {
	display: flex; flex-wrap: wrap; align-items: center; gap: 7px;
	margin-top: 12px; padding-top: 11px; border-top: 1px solid #edf0f5;
}
.contact-assistant__sources-label {
	color: var(--ca-muted); font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase;
}
.contact-assistant__sources a {
	padding: 4px 9px; color: var(--ca-brand-strong); border: 1px solid #ddd6ff;
	border-radius: 999px; background: #f6f4ff; font-size: 11.5px; font-weight: 700;
}
.contact-assistant__sources a:hover { background: #ece5ff; }
.contact-assistant__note { margin-top: 10px; color: var(--ca-muted); font-size: 10.5px; }
.contact-assistant__error { color: #b4232a; font-size: 13.5px; }

@keyframes ca-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .contact-assistant__spinner { animation-duration: 1.6s; } }
