/* ==========================================================
   EasyIT AI Chat — Public Widget
   ========================================================== */

.eaic-widget,
.eaic-widget * { box-sizing: border-box !important; }

.eaic-widget {
	--c-sidebar:     #0d1117;
	--c-sidebar-txt: #c9d1d9;
	--c-sidebar-sub: #8b949e;
	--c-sidebar-hov: rgba(255, 255, 255, .06);
	--c-sidebar-act: rgba(255, 255, 255, .12);
	--c-main:        #ffffff;
	--c-border:      #e5e7eb;
	--c-user-bg:     #1a56db;
	--c-user-txt:    #ffffff;
	--c-bot-bg:      #f3f4f6;
	--c-bot-txt:     #111827;
	--c-accent:      #4f46e5;
	--c-accent2:     #4338ca;
	--c-muted:       #9ca3af;
	--sidebar-w:     256px;
	--msg-h:         520px;
	--font: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* Outer shell */
.eaic-widget {
	display:        flex !important;
	flex-direction: row !important;
	align-items:    stretch !important;
	width:          100% !important;
	max-width:      1000px !important;
	min-height:     calc(var(--msg-h) + 130px) !important;
	margin:         24px auto !important;
	border-radius:  14px !important;
	overflow:       hidden !important;
	box-shadow:     0 8px 40px rgba(0,0,0,.12), 0 1px 3px rgba(0,0,0,.08) !important;
	position:       relative !important;
	background:     var(--c-main) !important;
	border:         1px solid var(--c-border) !important;
	font-family:    var(--font) !important;
	font-size:      14px !important;
	line-height:    1.5 !important;
}

/* ---- Sidebar ---- */
.eaic-widget .eaic-sidebar {
	display:        flex !important;
	flex-direction: column !important;
	width:          var(--sidebar-w) !important;
	min-width:      var(--sidebar-w) !important;
	max-width:      var(--sidebar-w) !important;
	flex-shrink:    0 !important;
	background:     var(--c-sidebar) !important;
	color:          var(--c-sidebar-txt) !important;
	overflow:       hidden !important;
	transition:     width .22s cubic-bezier(.4,0,.2,1), min-width .22s, opacity .22s !important;
}
.eaic-widget.eaic-sidebar-hidden .eaic-sidebar { width:0 !important; min-width:0 !important; opacity:0 !important; }

.eaic-widget .eaic-sidebar-header { padding: 14px 12px 10px !important; flex-shrink: 0 !important; }

.eaic-widget .eaic-new-chat-btn {
	display:       flex !important;
	align-items:   center !important;
	gap:           8px !important;
	width:         100% !important;
	padding:       9px 14px !important;
	background:    rgba(255,255,255,.07) !important;
	color:         var(--c-sidebar-txt) !important;
	border:        1px solid rgba(255,255,255,.12) !important;
	border-radius: 8px !important;
	cursor:        pointer !important;
	font-size:     13px !important;
	font-weight:   500 !important;
	font-family:   var(--font) !important;
	transition:    background .15s !important;
	box-shadow:    none !important;
	line-height:   1.4 !important;
	margin:        0 !important;
	white-space:   nowrap !important;
}
.eaic-widget .eaic-new-chat-btn:hover { background: rgba(255,255,255,.13) !important; }

.eaic-widget .eaic-sessions-list { flex:1 !important; overflow-y:auto !important; padding:0 8px 8px !important; }
.eaic-widget .eaic-sessions-list::-webkit-scrollbar { width:4px !important; }
.eaic-widget .eaic-sessions-list::-webkit-scrollbar-thumb { background:rgba(255,255,255,.15) !important; border-radius:4px !important; }

.eaic-widget .eaic-session-group-label {
	display:        block !important;
	padding:        12px 8px 4px !important;
	font-size:      10px !important;
	font-weight:    700 !important;
	text-transform: uppercase !important;
	letter-spacing: .08em !important;
	color:          var(--c-sidebar-sub) !important;
}

.eaic-widget .eaic-session-item {
	display:       flex !important;
	align-items:   center !important;
	gap:           8px !important;
	padding:       8px 10px !important;
	border-radius: 7px !important;
	cursor:        pointer !important;
	color:         var(--c-sidebar-txt) !important;
	transition:    background .12s !important;
	margin-bottom: 2px !important;
	overflow:      hidden !important;
}
.eaic-widget .eaic-session-item:hover     { background: var(--c-sidebar-hov) !important; }
.eaic-widget .eaic-session-item.eaic-active { background: var(--c-sidebar-act) !important; }

.eaic-widget .eaic-session-name {
	flex:          1 !important;
	overflow:      hidden !important;
	text-overflow: ellipsis !important;
	white-space:   nowrap !important;
	font-size:     13px !important;
}

.eaic-widget .eaic-session-del {
	flex-shrink:   0 !important;
	background:    transparent !important;
	border:        none !important;
	color:         rgba(255,255,255,.3) !important;
	cursor:        pointer !important;
	padding:       3px 4px !important;
	border-radius: 4px !important;
	opacity:       0 !important;
	box-shadow:    none !important;
	display:       flex !important;
	align-items:   center !important;
	transition:    opacity .12s, color .12s !important;
}
.eaic-widget .eaic-session-item:hover .eaic-session-del { opacity:1 !important; }
.eaic-widget .eaic-session-del:hover { color:#ef4444 !important; background:rgba(239,68,68,.15) !important; }

.eaic-widget .eaic-sidebar-footer {
	padding:      10px 12px 14px !important;
	flex-shrink:  0 !important;
	border-top:   1px solid rgba(255,255,255,.07) !important;
}

.eaic-widget .eaic-provider-select {
	width:             100% !important;
	padding:           9px 12px !important;
	background:        rgba(255,255,255,.06) !important;
	color:             var(--c-sidebar-txt) !important;
	border:            1px solid rgba(255,255,255,.12) !important;
	border-radius:     7px !important;
	font-size:         13px !important;
	font-family:       var(--font) !important;
	cursor:            pointer !important;
	-webkit-appearance:none !important;
	appearance:        none !important;
	box-shadow:        none !important;
	outline:           none !important;
}
.eaic-widget .eaic-provider-select:hover  { background: rgba(255,255,255,.10) !important; }
.eaic-widget .eaic-provider-select option { background: #1f2937 !important; color: #e5e7eb !important; }

/* ---- Main panel ---- */
.eaic-widget .eaic-main {
	display:        flex !important;
	flex-direction: column !important;
	flex:           1 1 0% !important;
	min-width:      0 !important;
	background:     var(--c-main) !important;
	overflow:       hidden !important;
}

.eaic-widget .eaic-topbar {
	display:      flex !important;
	align-items:  center !important;
	gap:          8px !important;
	padding:      10px 16px !important;
	border-bottom:1px solid var(--c-border) !important;
	flex-shrink:  0 !important;
	background:   #fff !important;
	min-height:   48px !important;
}

.eaic-widget .eaic-session-title {
	flex:          1 !important;
	font-size:     14px !important;
	font-weight:   600 !important;
	color:         #111827 !important;
	overflow:      hidden !important;
	text-overflow: ellipsis !important;
	white-space:   nowrap !important;
	font-family:   var(--font) !important;
}

.eaic-widget .eaic-toggle-sidebar,
.eaic-widget .eaic-delete-session-btn {
	background:    transparent !important;
	border:        none !important;
	cursor:        pointer !important;
	color:         var(--c-muted) !important;
	padding:       6px !important;
	border-radius: 6px !important;
	display:       flex !important;
	align-items:   center !important;
	justify-content:center !important;
	box-shadow:    none !important;
	flex-shrink:   0 !important;
	transition:    background .12s, color .12s !important;
}
.eaic-widget .eaic-toggle-sidebar:hover     { background:#f3f4f6 !important; color:#111827 !important; }
.eaic-widget .eaic-delete-session-btn:hover { background:rgba(239,68,68,.08) !important; color:#ef4444 !important; }
.eaic-widget .eaic-export-btn {
	background:    transparent !important;
	border:        none !important;
	cursor:        pointer !important;
	color:         var(--c-muted) !important;
	padding:       6px !important;
	border-radius: 6px !important;
	display:       flex !important;
	align-items:   center !important;
	justify-content:center !important;
	box-shadow:    none !important;
	flex-shrink:   0 !important;
	transition:    background .12s, color .12s !important;
}
.eaic-widget .eaic-export-btn:hover { background:#f3f4f6 !important; color:#111827 !important; }

/* ---- Messages area ---- */
.eaic-widget .eaic-messages {
	flex:       1 !important;
	overflow-y: auto !important;
	padding:    24px 20px !important;
	display:    flex !important;
	flex-direction: column !important;
	gap:        18px !important;
	min-height: var(--msg-h) !important;
	max-height: var(--msg-h) !important;
}
.eaic-widget .eaic-messages::-webkit-scrollbar       { width:5px !important; }
.eaic-widget .eaic-messages::-webkit-scrollbar-thumb { background:#e5e7eb !important; border-radius:4px !important; }

/* Welcome screen */
.eaic-widget .eaic-welcome {
	display:         flex !important;
	flex-direction:  column !important;
	align-items:     center !important;
	justify-content: center !important;
	flex:            1 !important;
	text-align:      center !important;
	padding:         40px 24px !important;
	gap:             8px !important;
}
.eaic-widget .eaic-welcome-icon {
	width:         64px !important;
	height:        64px !important;
	border-radius: 16px !important;
	background:    linear-gradient(135deg,#4f46e5,#7c3aed) !important;
	display:       flex !important;
	align-items:   center !important;
	justify-content:center !important;
	font-size:     30px !important;
	margin-bottom: 8px !important;
	box-shadow:    0 8px 24px rgba(79,70,229,.3) !important;
}
.eaic-widget .eaic-welcome-title {
	font-size:   20px !important;
	font-weight: 700 !important;
	color:       #111827 !important;
	margin:      0 !important;
	padding:     0 !important;
	border:      none !important;
	background:  none !important;
	font-family: var(--font) !important;
}
.eaic-widget .eaic-welcome-sub {
	font-size:   14px !important;
	color:       var(--c-muted) !important;
	margin:      0 !important;
	font-family: var(--font) !important;
}

/* ---- Message rows ---- */
.eaic-widget .eaic-msg {
	display:     flex !important;
	gap:         10px !important;
	align-items: flex-start !important;
	animation:   eaic-fade .2s ease !important;
}
@keyframes eaic-fade { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:translateY(0); } }

.eaic-widget .eaic-msg--user { flex-direction: row-reverse !important; }

.eaic-widget .eaic-msg-avatar {
	width:           34px !important;
	height:          34px !important;
	border-radius:   50% !important;
	display:         flex !important;
	align-items:     center !important;
	justify-content: center !important;
	font-size:       13px !important;
	font-weight:     700 !important;
	flex-shrink:     0 !important;
}
.eaic-widget .eaic-msg--user      .eaic-msg-avatar { background:var(--c-user-bg) !important; color:#fff !important; }
.eaic-widget .eaic-msg--assistant .eaic-msg-avatar { background:linear-gradient(135deg,#4f46e5,#7c3aed) !important; color:#fff !important; font-size:16px !important; }
.eaic-widget .eaic-msg-avatar .eaic-avatar-img { width:100% !important; height:100% !important; object-fit:cover !important; border-radius:50% !important; display:block !important; }

.eaic-widget .eaic-msg-body { display:flex !important; flex-direction:column !important; gap:4px !important; max-width:72% !important; }

/* ---- Label + provider badge ---- */
.eaic-widget .eaic-msg-label {
	display:     flex !important;
	align-items: center !important;
	gap:         6px !important;
	font-size:   12px !important;
	font-weight: 600 !important;
	color:       var(--c-muted) !important;
	margin-bottom: 3px !important;
}

.eaic-widget .eaic-provider-badge {
	display:        inline-block !important;
	font-size:      10px !important;
	font-weight:    600 !important;
	padding:        1px 7px !important;
	border-radius:  4px !important;
	background:     rgba(79,70,229,.1) !important;
	color:          #4f46e5 !important;
	letter-spacing: .02em !important;
	text-transform: capitalize !important;
}

/* ---- Message content bubble ---- */
/* JS creates .eaic-msg-content — apply same styles as old .eaic-msg-bubble */
.eaic-widget .eaic-msg-content {
	padding:      10px 14px !important;
	border-radius:14px !important;
	font-size:    14px !important;
	line-height:  1.65 !important;
	word-break:   break-word !important;
	font-family:  var(--font) !important;
}
.eaic-widget .eaic-msg--user      .eaic-msg-content { background:var(--c-user-bg) !important; color:var(--c-user-txt) !important; border-bottom-right-radius:4px !important; }
.eaic-widget .eaic-msg--assistant .eaic-msg-content { background:var(--c-bot-bg) !important; color:var(--c-bot-txt) !important; border-bottom-left-radius:4px !important; border:1px solid rgba(0,0,0,.05) !important; }

/* Keep .eaic-msg-bubble for backwards compat with history rendering */
.eaic-widget .eaic-msg-bubble {
	padding:      10px 14px !important;
	border-radius:14px !important;
	font-size:    14px !important;
	line-height:  1.65 !important;
	word-break:   break-word !important;
	font-family:  var(--font) !important;
}
.eaic-widget .eaic-msg--user      .eaic-msg-bubble { background:var(--c-user-bg) !important; color:var(--c-user-txt) !important; border-bottom-right-radius:4px !important; }
.eaic-widget .eaic-msg--assistant .eaic-msg-bubble { background:var(--c-bot-bg) !important; color:var(--c-bot-txt) !important; border-bottom-left-radius:4px !important; border:1px solid rgba(0,0,0,.05) !important; }

.eaic-widget .eaic-msg-meta { font-size:11px !important; color:var(--c-muted) !important; padding:0 2px !important; }

/* ---- Thinking bubble (while streaming) ---- */
.eaic-widget .eaic-thinking-bubble {
	display:      flex !important;
	align-items:  center !important;
	gap:          8px !important;
	padding:      10px 16px !important;
	background:   var(--c-bot-bg) !important;
	border:       1px solid rgba(0,0,0,.05) !important;
	border-radius:14px !important;
	border-bottom-left-radius:4px !important;
	min-width:    120px !important;
}
.eaic-widget .eaic-thinking-icon  { font-size:16px !important; animation:eaic-spin 2s linear infinite !important; display:inline-block !important; }
.eaic-widget .eaic-thinking-text  { font-size:13px !important; color:#6b7280 !important; font-style:italic !important; }
.eaic-widget .eaic-thinking-timer { font-size:11px !important; color:var(--c-muted) !important; font-variant-numeric:tabular-nums !important; margin-left:auto !important; }

@keyframes eaic-spin { from { transform:rotate(0deg); } to { transform:rotate(360deg); } }

/* ---- Streaming cursor ---- */
.eaic-widget .eaic-cursor {
	display:          inline-block !important;
	width:            2px !important;
	height:           1em !important;
	background:       #4f46e5 !important;
	margin-left:      2px !important;
	vertical-align:   text-bottom !important;
	animation:        eaic-blink .7s step-end infinite !important;
}
@keyframes eaic-blink { 0%,100%{opacity:1} 50%{opacity:0} }

/* ---- Markdown inside bubbles ---- */
.eaic-widget .eaic-msg-content p,
.eaic-widget .eaic-msg-bubble  p  { margin:0 0 8px !important; padding:0 !important; }
.eaic-widget .eaic-msg-content p:last-child,
.eaic-widget .eaic-msg-bubble  p:last-child { margin-bottom:0 !important; }
.eaic-widget .eaic-msg-content ul,
.eaic-widget .eaic-msg-content ol,
.eaic-widget .eaic-msg-bubble  ul,
.eaic-widget .eaic-msg-bubble  ol { margin:6px 0 6px 18px !important; padding:0 !important; }
.eaic-widget .eaic-msg-content li,
.eaic-widget .eaic-msg-bubble  li { margin-bottom:3px !important; }
.eaic-widget .eaic-msg-content h1,
.eaic-widget .eaic-msg-content h2,
.eaic-widget .eaic-msg-content h3,
.eaic-widget .eaic-msg-bubble  h1,
.eaic-widget .eaic-msg-bubble  h2,
.eaic-widget .eaic-msg-bubble  h3 { margin:10px 0 4px !important; padding:0 !important; border:none !important; font-weight:700 !important; background:none !important; }
.eaic-widget .eaic-msg-content strong,
.eaic-widget .eaic-msg-bubble  strong { font-weight:700 !important; }
.eaic-widget .eaic-msg-content em,
.eaic-widget .eaic-msg-bubble  em     { font-style:italic !important; }
.eaic-widget .eaic-msg-content code,
.eaic-widget .eaic-msg-bubble  code   { background:rgba(0,0,0,.07) !important; padding:2px 5px !important; border-radius:4px !important; font-family:Consolas,monospace !important; font-size:12.5px !important; }
.eaic-widget .eaic-msg--user .eaic-msg-content code,
.eaic-widget .eaic-msg--user .eaic-msg-bubble  code { background:rgba(255,255,255,.2) !important; }

/* ---- Code blocks ---- */
.eaic-widget .eaic-code-block { margin:8px 0 !important; border-radius:10px !important; overflow:hidden !important; border:1px solid rgba(0,0,0,.1) !important; }
.eaic-widget .eaic-code-header {
	display:         flex !important;
	align-items:     center !important;
	justify-content: space-between !important;
	padding:         6px 14px !important;
	background:      #1e293b !important;
	color:           #94a3b8 !important;
	font-size:       11px !important;
	font-weight:     600 !important;
}
.eaic-widget .eaic-copy-code,
.eaic-widget .eaic-code-copy {
	background:    transparent !important;
	border:        1px solid rgba(255,255,255,.15) !important;
	color:         #94a3b8 !important;
	cursor:        pointer !important;
	font-size:     11px !important;
	padding:       3px 8px !important;
	border-radius: 4px !important;
	box-shadow:    none !important;
	transition:    background .12s !important;
}
.eaic-widget .eaic-copy-code:hover,
.eaic-widget .eaic-code-copy:hover { background:rgba(255,255,255,.12) !important; color:#fff !important; }
.eaic-widget .eaic-code-block pre {
	margin:       0 !important;
	padding:      14px !important;
	background:   #0f172a !important;
	color:        #e2e8f0 !important;
	overflow-x:   auto !important;
	font-family:  Consolas,monospace !important;
	font-size:    12.5px !important;
	line-height:  1.7 !important;
	white-space:  pre !important;
}

/* ---- Typing dots (kept for fallback) ---- */
.eaic-widget .eaic-typing { display:flex !important; gap:5px !important; align-items:center !important; padding:4px 2px !important; }
.eaic-widget .eaic-typing-dot { width:8px !important; height:8px !important; border-radius:50% !important; background:#9ca3af !important; animation:eaic-bounce 1s ease-in-out infinite !important; }
.eaic-widget .eaic-typing-dot:nth-child(2) { animation-delay:.18s !important; }
.eaic-widget .eaic-typing-dot:nth-child(3) { animation-delay:.36s !important; }
@keyframes eaic-bounce { 0%,80%,100%{transform:translateY(0);opacity:.5} 40%{transform:translateY(-7px);opacity:1} }

/* ---- Error ---- */
.eaic-widget .eaic-msg-error .eaic-msg-content { background:#fff1f2 !important; border:1px solid #fecdd3 !important; color:#9f1239 !important; }

/* ---- Privacy bar ---- */
.eaic-widget .eaic-privacy {
	text-align:  center !important;
	font-size:   11px !important;
	color:       #b0b7c3 !important;
	padding:     5px 16px !important;
	flex-shrink: 0 !important;
	background:  #fafafa !important;
	border-top:  1px solid #f0f0f0 !important;
}
.eaic-widget .eaic-privacy a { color:#6b7280 !important; text-decoration:underline !important; }

/* ---- Input area ---- */
.eaic-widget .eaic-input-area { padding:12px 16px 16px !important; flex-shrink:0 !important; background:#fff !important; }
.eaic-widget .eaic-input-wrap {
	display:       flex !important;
	align-items:   flex-end !important;
	gap:           8px !important;
	background:    #f9fafb !important;
	border:        1.5px solid #e5e7eb !important;
	border-radius: 12px !important;
	padding:       10px 12px !important;
	transition:    border-color .15s, box-shadow .15s !important;
}
.eaic-widget .eaic-input-wrap:focus-within { border-color:var(--c-accent) !important; box-shadow:0 0 0 3px rgba(79,70,229,.1) !important; }
.eaic-widget .eaic-input {
	flex:        1 !important;
	border:      none !important;
	background:  transparent !important;
	resize:      none !important;
	font-size:   14px !important;
	font-family: var(--font) !important;
	line-height: 1.5 !important;
	color:       #111827 !important;
	outline:     none !important;
	box-shadow:  none !important;
	max-height:  120px !important;
	overflow-y:  auto !important;
	padding:     0 !important;
	margin:      0 !important;
	min-height:  22px !important;
}
.eaic-widget .eaic-input::placeholder { color:var(--c-muted) !important; }
.eaic-widget .eaic-send-btn {
	flex-shrink:     0 !important;
	width:           36px !important;
	height:          36px !important;
	border-radius:   10px !important;
	background:      var(--c-accent) !important;
	color:           #fff !important;
	border:          none !important;
	cursor:          pointer !important;
	display:         flex !important;
	align-items:     center !important;
	justify-content: center !important;
	box-shadow:      0 2px 8px rgba(79,70,229,.3) !important;
	padding:         0 !important;
	margin:          0 !important;
	transition:      background .15s, opacity .15s, transform .1s !important;
}
.eaic-widget .eaic-send-btn:disabled { opacity:.4 !important; cursor:default !important; box-shadow:none !important; }
.eaic-widget .eaic-send-btn:not(:disabled):hover  { background:var(--c-accent2) !important; transform:scale(1.05) !important; }
.eaic-widget .eaic-send-btn:not(:disabled):active { transform:scale(.96) !important; }
.eaic-widget .eaic-hint { margin:5px 0 0 !important; padding:0 !important; font-size:11px !important; color:var(--c-muted) !important; text-align:center !important; }

/* ---- Full-width page wrapper ---- */
.eaic-page-wrap { width:100% !important; max-width:100% !important; margin:0 !important; padding:0 !important; box-sizing:border-box !important; }
.eaic-page-wrap .eaic-widget { max-width:100% !important; width:100% !important; margin:0 0 24px !important; }

/* ---- Chat page body overrides ---- */
body.eaic-chat-page .site-main,
body.eaic-chat-page .content-area,
body.eaic-chat-page main#main,
body.eaic-chat-page .entry-content,
body.eaic-chat-page .post-content,
body.eaic-chat-page .page-content,
body.eaic-chat-page article,
body.eaic-chat-page .hentry { max-width:100% !important; width:100% !important; padding-left:0 !important; padding-right:0 !important; float:none !important; }
body.eaic-chat-page .wp-site-blocks,
body.eaic-chat-page .is-layout-constrained > * { max-width:100% !important; padding-left:16px !important; padding-right:16px !important; }
body.eaic-chat-page .entry-title,
body.eaic-chat-page .page-title,
body.eaic-chat-page h1.wp-block-post-title,
body.eaic-chat-page .page-header { display:none !important; }

/* ---- Floating widget ---- */
.eaic-floating-wrap {
	position:   fixed !important;
	z-index:    999999 !important;
	display:    flex !important;
	flex-direction: column !important;
	align-items: flex-end !important;
	gap:        12px !important;
}
.eaic-floating-bottom-right { bottom:24px !important; right:24px !important; }
.eaic-floating-bottom-left  { bottom:24px !important; left:24px !important; align-items:flex-start !important; }

.eaic-float-btn {
	width:           60px !important;
	height:          60px !important;
	border-radius:   50% !important;
	background:      var(--eaic-float-accent, #4f46e5) !important;
	color:           #fff !important;
	border:          none !important;
	cursor:          pointer !important;
	display:         flex !important;
	align-items:     center !important;
	justify-content: center !important;
	box-shadow:      0 4px 20px rgba(0,0,0,.25) !important;
	padding:         0 !important;
	margin:          0 !important;
	flex-shrink:     0 !important;
	transition:      transform .2s cubic-bezier(.34,1.56,.64,1), box-shadow .2s !important;
}
.eaic-float-btn:hover { transform:scale(1.08) !important; box-shadow:0 6px 28px rgba(0,0,0,.3) !important; }
.eaic-float-btn:active { transform:scale(.95) !important; }

.eaic-float-panel {
	width:        380px !important;
	background:   #fff !important;
	border-radius:16px !important;
	box-shadow:   0 20px 60px rgba(0,0,0,.18), 0 4px 16px rgba(0,0,0,.1) !important;
	overflow:     hidden !important;
	transform:    scale(.94) translateY(12px) !important;
	opacity:      0 !important;
	pointer-events: none !important;
	transition:   transform .22s cubic-bezier(.34,1.56,.64,1), opacity .18s ease !important;
	max-height:   90vh !important;
	display:      flex !important;
	flex-direction: column !important;
}
.eaic-float-panel.eaic-float-open {
	transform:      scale(1) translateY(0) !important;
	opacity:        1 !important;
	pointer-events: auto !important;
}

.eaic-float-header {
	display:       flex !important;
	align-items:   center !important;
	justify-content: space-between !important;
	padding:       14px 16px !important;
	background:    var(--eaic-float-accent, #4f46e5) !important;
	color:         #fff !important;
	flex-shrink:   0 !important;
}
.eaic-float-title { font-size:15px !important; font-weight:600 !important; font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif !important; }
.eaic-float-close {
	background:    transparent !important;
	border:        none !important;
	color:         rgba(255,255,255,.8) !important;
	cursor:        pointer !important;
	padding:       4px !important;
	border-radius: 6px !important;
	display:       flex !important;
	align-items:   center !important;
	box-shadow:    none !important;
	transition:    color .12s !important;
}
.eaic-float-close:hover { color:#fff !important; }

.eaic-float-body { flex:1 !important; overflow:hidden !important; }
.eaic-float-body .eaic-page-wrap { margin:0 !important; padding:0 !important; }
.eaic-float-body .eaic-widget {
	margin:        0 !important;
	border-radius: 0 !important;
	box-shadow:    none !important;
	border:        none !important;
	min-height:    0 !important;
	max-width:     100% !important;
}
.eaic-float-body .eaic-sidebar { display:none !important; }
.eaic-float-body .eaic-messages { min-height:200px !important; }

@media (max-width:440px) {
	.eaic-float-panel { width:calc(100vw - 24px) !important; }
	.eaic-floating-bottom-right { right:12px !important; }
	.eaic-floating-bottom-left  { left:12px !important; }
}

/* ---- Mic button ---- */
.eaic-widget .eaic-mic-btn {
	flex-shrink:     0 !important;
	width:           36px !important;
	height:          36px !important;
	border-radius:   10px !important;
	background:      #f3f4f6 !important;
	color:           #6b7280 !important;
	border:          none !important;
	cursor:          pointer !important;
	display:         flex !important;
	align-items:     center !important;
	justify-content: center !important;
	padding:         0 !important;
	margin:          0 !important;
	box-shadow:      none !important;
	transition:      background .15s, color .15s !important;
}
.eaic-widget .eaic-mic-btn:hover { background:#e5e7eb !important; color:#111827 !important; }
.eaic-widget .eaic-mic-btn.eaic-mic-active {
	background: #fee2e2 !important;
	color:      #ef4444 !important;
	animation:  eaic-mic-pulse .9s ease infinite !important;
}
@keyframes eaic-mic-pulse {
	0%,100% { box-shadow: 0 0 0 0 rgba(239,68,68,.35); }
	50%     { box-shadow: 0 0 0 7px rgba(239,68,68,0); }
}

/* ---- Suggested question chips ---- */
.eaic-widget .eaic-suggested-chips {
	display:    flex !important;
	flex-wrap:  wrap !important;
	gap:        8px !important;
	padding:    4px 0 !important;
	animation:  eaic-fade .2s ease !important;
}
.eaic-widget .eaic-chip {
	display:       inline-flex !important;
	align-items:   center !important;
	padding:       7px 16px !important;
	background:    #fff !important;
	border:        1.5px solid var(--c-accent) !important;
	border-radius: 20px !important;
	color:         var(--c-accent) !important;
	font-size:     13px !important;
	font-family:   var(--font) !important;
	font-weight:   500 !important;
	cursor:        pointer !important;
	box-shadow:    none !important;
	transition:    background .15s, color .15s, transform .1s, box-shadow .15s !important;
	white-space:   nowrap !important;
	line-height:   1.4 !important;
	margin:        0 !important;
}
.eaic-widget .eaic-chip:hover {
	background:  var(--c-accent) !important;
	color:       #fff !important;
	transform:   translateY(-1px) !important;
	box-shadow:  0 3px 10px rgba(79,70,229,.2) !important;
}
.eaic-widget .eaic-chip:active { transform:scale(.97) !important; box-shadow:none !important; }

/* ---- Responsive ---- */
@media (min-width:401px) and (max-width:900px) {
	.eaic-widget { --sidebar-w:200px; }
	.eaic-widget .eaic-sidebar { width:200px !important; min-width:200px !important; max-width:200px !important; }
	.eaic-widget .eaic-new-chat-btn { padding:8px 10px !important; font-size:12px !important; }
}

@media (max-width:400px) {
	.eaic-page-wrap { padding:0 4px !important; }
	.eaic-widget { flex-direction:column !important; border-radius:8px !important; }
	.eaic-widget .eaic-sidebar { width:100% !important; min-width:0 !important; max-width:100% !important; max-height:130px !important; }
	.eaic-widget .eaic-msg-body { max-width:92% !important; }
	.eaic-widget .eaic-hint { display:none !important; }
}
