/* Digital Allo AI Assistant — shared conversation-panel styles. */
.da-ai-assistant {
	--da-ai-navy: #09183d;
	--da-ai-ink: #102657;
	--da-ai-blue: #1677ef;
	--da-ai-purple: #6146d8;
	--da-ai-pink: #df2dbd;
	--da-ai-soft: #f3f7ff;
	--da-ai-line: #d8e5fb;
	position: fixed;
	z-index: 99960;
	font-family: Poppins, Arial, sans-serif;
	color: var(--da-ai-ink);
}

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

.da-ai-assistant button,
.da-ai-assistant input,
.da-ai-assistant textarea {
	font: inherit;
}

.da-ai-assistant button {
	cursor: pointer;
}

.da-ai-assistant__panel {
	position: absolute;
	display: flex;
	flex-direction: column;
	height: min(620px, calc(100dvh - 132px));
	min-height: 0;
	overflow: hidden;
	border: 1px solid rgba(112, 103, 222, .44);
	border-radius: 22px;
	background: #fff;
	box-shadow: 0 24px 70px rgba(8, 22, 60, .3);
}

.da-ai-assistant__panel[hidden] {
	display: none;
}

.da-ai-assistant__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 14px 15px;
	border-bottom: 1px solid rgba(220, 230, 250, .28);
	background: linear-gradient(120deg, #0a2050, #1e3074 58%, #44276f);
	color: #fff;
}

.da-ai-assistant__identity {
	display: flex;
	align-items: center;
	min-width: 0;
	gap: 10px;
}

.da-ai-assistant__header-logo {
	display: grid;
	flex: 0 0 38px;
	place-items: center;
	width: 38px;
	height: 38px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .6);
	border-radius: 50%;
	background: #fff;
}

.da-ai-assistant__header-logo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.da-ai-assistant__identity strong {
	display: block;
	overflow: hidden;
	font-size: 13px;
	line-height: 1.25;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.da-ai-assistant__identity small {
	display: flex;
	align-items: center;
	gap: 5px;
	margin-top: 3px;
	color: #dce8ff;
	font-size: 10px;
}

.da-ai-assistant__identity small i {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #45e1a3;
}

.da-ai-assistant__panel-actions {
	display: flex;
	gap: 4px;
}

.da-ai-assistant__icon-button {
	display: grid;
	place-items: center;
	width: 31px;
	height: 31px;
	padding: 0;
	border: 0;
	border-radius: 9px;
	background: rgba(255, 255, 255, .1);
	color: #fff;
	font-size: 21px;
	line-height: 1;
}

.da-ai-assistant__icon-button:hover {
	background: rgba(255, 255, 255, .2);
}

.da-ai-assistant__conversation {
	flex: 1;
	min-height: 0;
	overflow-y: auto;
	padding: 16px 15px 9px;
	background: linear-gradient(180deg, #f9fbff, #fff 26%);
	scrollbar-color: #c2d4f4 transparent;
	scrollbar-width: thin;
}

.da-ai-assistant__message {
	display: flex;
	margin: 0 0 11px;
}

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

.da-ai-assistant__bubble {
	max-width: 88%;
	padding: 10px 12px;
	border-radius: 14px;
	font-size: 13px;
	line-height: 1.55;
	word-break: break-word;
}

.da-ai-assistant__message--assistant .da-ai-assistant__bubble {
	border: 1px solid #deebff;
	border-bottom-left-radius: 4px;
	background: #f2f7ff;
	color: #18366d;
}

.da-ai-assistant__message--user .da-ai-assistant__bubble {
	border-bottom-right-radius: 4px;
	background: linear-gradient(125deg, #1a7df0, #694ce0 63%, #c634c8);
	color: #fff;
}

.da-ai-assistant__bubble p {
	margin: 0;
}

.da-ai-assistant__bubble p + p {
	margin-top: 7px;
}

.da-ai-assistant__bubble a {
	color: inherit;
	font-weight: 800;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.da-ai-assistant__message--notice .da-ai-assistant__bubble {
	max-width: 100%;
	border: 1px solid #ffd7a2;
	background: #fff8ec;
	color: #734509;
}

.da-ai-assistant__typing {
	display: inline-flex;
	gap: 4px;
	padding: 4px;
}

.da-ai-assistant__typing i {
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #5a75ad;
	animation: da-ai-dot 1.2s infinite ease-in-out;
}

.da-ai-assistant__typing i:nth-child(2) { animation-delay: .15s; }
.da-ai-assistant__typing i:nth-child(3) { animation-delay: .3s; }

.da-ai-assistant__choices {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	max-height: 168px;
	overflow: auto;
	padding: 8px 15px 10px;
	background: #fff;
}

.da-ai-assistant__choice,
.da-ai-assistant__choice-link,
.da-ai-assistant__choice-action {
	flex: 0 0 auto;
	max-width: 100%;
	padding: 8px 10px;
	border: 1px solid #c7d9f9;
	border-radius: 11px;
	background: #fff;
	color: #155ec8;
	font-size: 11px;
	font-weight: 800;
	line-height: 1.3;
	text-align: left;
	transition: border-color .18s ease, background .18s ease, transform .18s ease;
}

.da-ai-assistant__choice:hover,
.da-ai-assistant__choice-link:hover,
.da-ai-assistant__choice-action:hover {
	border-color: #287cf0;
	background: #f1f7ff;
	transform: translateY(-1px);
}

.da-ai-assistant__choice[aria-pressed="true"] {
	border-color: #6751df;
	background: #edf0ff;
	color: #392a9d;
}

.da-ai-assistant__choice--wide { flex-basis: 100%; }

.da-ai-assistant__profile-download {
	min-height: 44px;
	display: inline-flex;
	align-items: center;
}

.da-ai-assistant__choice--done {
	border: 0;
	background: linear-gradient(110deg, #1677ef, #6b4ddd 63%, #d72ebc);
	color: #fff;
}

.da-ai-assistant__choice--done:disabled {
	opacity: .5;
	cursor: not-allowed;
	transform: none;
}

.da-ai-assistant__selection-panel {
	width: 100%;
	max-height: 151px;
	overflow: auto;
	padding: 4px;
	border: 1px solid #e0ebfc;
	border-radius: 13px;
	background: #f7faff;
}

.da-ai-assistant__choice-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 7px;
}

.da-ai-assistant__choice-list .da-ai-assistant__choice {
	width: 100%;
	min-height: 42px;
}

.da-ai-assistant__form-card {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 9px;
	width: 100%;
	padding: 11px;
	border: 1px solid #d9e6fb;
	border-radius: 14px;
	background: #f8fbff;
}

.da-ai-assistant__field { display: grid; gap: 5px; }
.da-ai-assistant__field--wide { grid-column: 1 / -1; }

.da-ai-assistant__field label {
	color: #18366d;
	font-size: 11px;
	font-weight: 800;
}

.da-ai-assistant__field input {
	width: 100%;
	min-width: 0;
	height: 39px;
	padding: 8px 9px;
	border: 1px solid #c5d8f7;
	border-radius: 9px;
	background: #fff;
	color: #102657;
	font-size: 12px;
}

.da-ai-assistant__field input:focus {
	outline: 3px solid rgba(34, 122, 240, .2);
	border-color: #1677ef;
}

.da-ai-assistant__review {
	width: 100%;
	padding: 11px;
	border: 1px solid #d9e6fb;
	border-radius: 13px;
	background: #f7faff;
	font-size: 11px;
	line-height: 1.55;
}

.da-ai-assistant__review dl { margin: 0; }

.da-ai-assistant__review div {
	display: grid;
	grid-template-columns: 78px 1fr;
	gap: 5px;
	padding: 5px 0;
	border-bottom: 1px solid #e2ecfb;
}

.da-ai-assistant__review div:last-child { border-bottom: 0; }
.da-ai-assistant__review dt { color: #4b6697; font-weight: 800; }
.da-ai-assistant__review dd { margin: 0; color: #16336a; }

.da-ai-assistant__review-edit {
	padding: 0;
	border: 0;
	background: transparent;
	color: #0b6ee8;
	font-size: 11px;
	font-weight: 800;
	text-decoration: underline;
}

.da-ai-assistant__composer {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 12px;
	border-top: 1px solid #e1ebfa;
	background: #fff;
}

.da-ai-assistant__composer input {
	flex: 1;
	min-width: 0;
	height: 42px;
	padding: 0 12px;
	border: 1px solid #c5d8f7;
	border-radius: 12px;
	background: #f9fbff;
	color: #102657;
	font-size: 13px;
}

.da-ai-assistant__composer input:focus {
	outline: 3px solid rgba(34, 122, 240, .18);
	border-color: #1677ef;
	background: #fff;
}

.da-ai-assistant__composer button {
	display: grid;
	flex: 0 0 42px;
	place-items: center;
	width: 42px;
	height: 42px;
	padding: 0;
	border: 0;
	border-radius: 12px;
	background: linear-gradient(135deg, #197af0, #684de0 62%, #d42fbd);
	color: #fff;
}

.da-ai-assistant__composer button:disabled { opacity: .5; cursor: not-allowed; }
.da-ai-assistant__composer svg { width: 19px; height: 19px; fill: currentColor; }

.da-ai-assistant__privacy {
	margin: 0;
	padding: 0 13px 11px;
	background: #fff;
	color: #6780a8;
	font-size: 10px;
	line-height: 1.45;
}

.da-ai-assistant__privacy a { color: #316fca; }

.da-ai-assistant__launcher:focus-visible,
.da-ai-assistant button:focus-visible,
.da-ai-assistant a:focus-visible {
	outline: 3px solid #ffcd42;
	outline-offset: 3px;
}

@keyframes da-ai-dot {
	0%, 80%, 100% { opacity: .35; transform: translateY(0); }
	40% { opacity: 1; transform: translateY(-3px); }
}

@media (prefers-reduced-motion: reduce) {
	.da-ai-assistant *,
	.da-ai-assistant *::before,
	.da-ai-assistant *::after {
		scroll-behavior: auto !important;
		animation: none !important;
		transition: none !important;
	}
}

@media (max-width: 520px) {
	.da-ai-assistant__panel { border-radius: 19px; }
	.da-ai-assistant__choice-list { grid-template-columns: 1fr; }
	.da-ai-assistant__choices { max-height: 177px; }
	.da-ai-assistant__form-card { grid-template-columns: 1fr; }
	.da-ai-assistant__field { grid-column: 1 / -1; }
	.da-ai-assistant__review div { grid-template-columns: 68px 1fr; }
}
