/* ── Styling overrides: CSS variable consumers ────────────────────────────── */
/* These rules read --aspichp-* variables injected by ASPICHP_Styling::build_css(). */
/* On Boost plans the variables are not set, so var() fallbacks preserve the original look. */

.aspich-panel {
	width:         var( --aspichp-panel-width,   340px );
	height:        var( --aspichp-panel-height,  500px );
	border-radius: var( --aspichp-border-radius, 14px  );
}

.aspich-messages {
	background: var( --aspichp-messages-bg, #f8fafc );
}

.aspich-bot {
	background: var( --aspichp-bot-bg,  #e5e7eb );
	font-size:  var( --aspichp-font-size, 14px  );
}

.aspich-widget {
	bottom: var( --aspichp-bottom-offset, 20px );
}

.aspich-header {
	color: var( --aspichp-header-color, #fff );
}

.aspich-input {
	background: var( --aspichp-input-bg, #fff );
}

/* ── Conversation rating buttons ──────────────────────────────────────────── */

.aspichp-rating-wrap {
	display:         flex;
	gap:             2px;
	margin:          3px 0 4px 2px;
	justify-content: flex-start;
}

.aspichp-rating-btn {
	background:  none;
	border:      none;
	border-radius: 4px;
	cursor:      pointer;
	padding:     3px;
	line-height: 1;
	color:       var( --aspich-primary, #2563eb );
	transition:  opacity 0.15s;
	opacity:     1;
}

.aspichp-rating-btn svg {
	display: block;
}

.aspichp-rating-btn:hover:not(:disabled) {
	opacity: 0.5;
}

.aspichp-rating-btn:disabled {
	cursor: default;
}

.aspichp-rating-btn.aspichp-rating-active {
	opacity: 1;
}

.aspichp-rating-btn:not(.aspichp-rating-active):disabled {
	opacity: 0.25;
}

.aspichp-rating-thanks {
	font-size:  12px;
	color:      #94a3b8;
	padding:    3px 2px;
	font-style: italic;
}

/* ── Pro Lead Capture Form (injected into chatbot widget) ─────────────────── */

.aspichp-lead-form-inner {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.aspichp-lead-title {
	margin: 0 0 2px;
	font-weight: 700;
	font-size: 14px;
	line-height: 1.3;
}

.aspichp-lead-subtitle {
	margin: 0 0 4px;
	font-size: 12px;
	opacity: .85;
	line-height: 1.4;
}

.aspichp-lead-form-inner input[type="text"],
.aspichp-lead-form-inner input[type="email"],
.aspichp-lead-form-inner input[type="tel"] {
	width: 100%;
	box-sizing: border-box;
	padding: 8px 10px;
	border: 1px solid #d1d5db;
	border-radius: 6px;
	font-size: 13px;
	line-height: 1.4;
	background: #fff;
	color: #111;
	outline: none;
	transition: border-color 0.15s;
}

.aspichp-lead-form-inner input:focus {
	border-color: var( --aspich-primary, #2563eb );
	box-shadow: 0 0 0 2px rgba( 37, 99, 235, 0.15 );
}

.aspichp-lead-actions {
	display: flex;
	gap: 8px;
	align-items: center;
	margin-top: 4px;
}

.aspichp-lead-submit {
	padding: 8px 18px;
	background: var( --aspich-primary, #2563eb );
	color: #fff;
	border: none;
	border-radius: 6px;
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	transition: opacity 0.15s;
}

.aspichp-lead-submit:hover:not(:disabled) {
	opacity: .88;
}

.aspichp-lead-submit:disabled {
	opacity: .55;
	cursor: default;
}

.aspichp-lead-skip {
	background: none;
	border: none;
	padding: 0;
	font-size: 12px;
	color: inherit;
	opacity: .6;
	cursor: pointer;
	text-decoration: underline;
}

.aspichp-lead-skip:hover {
	opacity: 1;
}

.aspichp-lead-error {
	margin: 0;
	font-size: 12px;
	color: #dc2626;
}

.aspichp-lead-thankyou .aspich-message-content {
	font-style: italic;
	opacity: .85;
}
