.monosi-ai-root, .monosi-ai-inline { font-family: inherit; }

.monosi-bubble {
	position: fixed;
	bottom: 24px;
	right: 24px;
	z-index: 99998;
	background: #1b6e3c;
	color: #fff;
	border-radius: 50px;
	padding: 14px 20px;
	box-shadow: 0 4px 16px rgba(0,0,0,.2);
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 8px;
	font-weight: 600;
	font-size: 14px;
	border: none;
}
.monosi-bubble:hover { background: #155c31; }
.monosi-bubble svg { width: 20px; height: 20px; fill: #fff; }

.monosi-panel {
	position: fixed;
	bottom: 24px;
	right: 24px;
	width: 380px;
	max-width: calc(100vw - 32px);
	height: 560px;
	max-height: calc(100vh - 48px);
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 8px 32px rgba(0,0,0,.25);
	z-index: 99999;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}
.monosi-ai-inline .monosi-panel {
	position: relative;
	bottom: auto; right: auto;
	width: 100%; max-width: 480px;
	height: 600px;
	box-shadow: 0 2px 12px rgba(0,0,0,.12);
	margin: 0 auto;
}

.monosi-header {
	background: #1b6e3c;
	color: #fff;
	padding: 14px 16px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-shrink: 0;
}
.monosi-header strong { font-size: 15px; }
.monosi-header-actions { display: flex; align-items: center; gap: 10px; }
.monosi-header-actions select {
	font-size: 12px;
	border-radius: 4px;
	border: none;
	padding: 3px 4px;
}
.monosi-close-btn {
	background: transparent; border: none; color: #fff; font-size: 20px;
	cursor: pointer; line-height: 1; padding: 0 4px;
}

.monosi-body {
	flex: 1;
	overflow-y: auto;
	padding: 14px;
	background: #f7f8f6;
}

.monosi-msg {
	background: #fff;
	border-radius: 10px;
	padding: 10px 12px;
	margin-bottom: 10px;
	font-size: 13.5px;
	line-height: 1.45;
	box-shadow: 0 1px 3px rgba(0,0,0,.08);
	max-width: 92%;
}
.monosi-msg.monosi-msg-user {
	background: #1b6e3c;
	color: #fff;
	margin-left: auto;
}

.monosi-choices { display: flex; flex-direction: column; gap: 6px; margin: 10px 0; }
.monosi-choice-btn {
	background: #fff;
	border: 1px solid #d6dcd6;
	border-radius: 8px;
	padding: 9px 12px;
	text-align: left;
	cursor: pointer;
	font-size: 13.5px;
}
.monosi-choice-btn:hover { border-color: #1b6e3c; background: #eef6f0; }

.monosi-inline-actions { display: flex; gap: 8px; margin-top: 10px; }
.monosi-btn {
	background: #1b6e3c;
	color: #fff;
	border: none;
	border-radius: 8px;
	padding: 9px 14px;
	font-size: 13.5px;
	cursor: pointer;
	font-weight: 600;
}
.monosi-btn.monosi-btn-secondary {
	background: #fff;
	color: #1b6e3c;
	border: 1px solid #1b6e3c;
}
.monosi-btn:disabled { opacity: .5; cursor: default; }

.monosi-input-row {
	display: flex;
	gap: 8px;
	margin-top: 10px;
}
.monosi-input-row input[type=text], .monosi-input-row input[type=number], .monosi-input-row textarea {
	flex: 1;
	border: 1px solid #d6dcd6;
	border-radius: 8px;
	padding: 8px 10px;
	font-size: 13.5px;
	resize: none;
}

.monosi-disclaimer {
	font-size: 11.5px;
	color: #7a7f7a;
	font-style: italic;
	margin: 8px 0 12px;
	padding-top: 8px;
	border-top: 1px dashed #d6dcd6;
}

.monosi-product-card {
	display: flex;
	gap: 10px;
	background: #fff;
	border: 1px solid #e4e7e4;
	border-radius: 10px;
	padding: 10px;
	margin-bottom: 8px;
	align-items: center;
}
.monosi-product-card img {
	width: 56px; height: 56px; object-fit: contain; flex-shrink: 0;
	background: #f2f3f1; border-radius: 6px;
}
.monosi-product-info { flex: 1; min-width: 0; }
.monosi-product-info a {
	font-weight: 600; font-size: 13px; color: #1b1b1b; text-decoration: none;
	display: block; margin-bottom: 2px;
}
.monosi-product-price { font-size: 13px; color: #1b6e3c; font-weight: 700; }
.monosi-product-note { font-size: 11px; color: #7a7f7a; margin-top: 2px; }
.monosi-product-actions { display: flex; align-items: center; gap: 6px; flex-shrink: 0; }
.monosi-product-actions input[type=number] {
	width: 46px; text-align: center; border: 1px solid #d6dcd6; border-radius: 6px; padding: 4px;
}
.monosi-add-btn {
	background: #1b6e3c; color: #fff; border: none; border-radius: 6px;
	padding: 6px 10px; font-size: 12px; cursor: pointer;
}
.monosi-add-btn.added { background: #4a9c6b; }

.monosi-contact-box {
	background: #eef6f0;
	border-radius: 8px;
	padding: 10px 12px;
	font-size: 13px;
	margin-top: 10px;
}
.monosi-contact-box a { color: #1b6e3c; font-weight: 600; }

.monosi-step-block {
	background: #fff;
	border: 1px solid #e4e7e4;
	border-radius: 10px;
	padding: 10px 12px;
	margin-bottom: 10px;
}
.monosi-step-block h4 { margin: 0 0 4px; font-size: 13.5px; }
.monosi-step-block p { margin: 0 0 8px; font-size: 12.5px; color: #4a4f4a; }

@media (max-width: 420px) {
	.monosi-panel { right: 8px; left: 8px; width: auto; bottom: 8px; height: calc(100vh - 16px); }
	.monosi-bubble { right: 12px; bottom: 12px; }
}
