:root{--bg: #f4f7fb;--surface: #ffffff;--surface-strong: #0f172a;--surface-soft: #eef3fb;--border: rgba(15, 23, 42, .08);--border-strong: rgba(15, 23, 42, .14);--text: #0f172a;--text-muted: #64748b;--primary: #2563eb;--primary-strong: #1d4ed8;--primary-soft: rgba(37, 99, 235, .1);--bot-bubble-bg: #ffffff;--user-bubble-bg: #2563eb;--reasoning-bg: #f8fafc;--warning: #fef3c7;--danger: #fee2e2;--shadow: 0 18px 50px rgba(15, 23, 42, .16);--radius-lg: 18px;--radius-md: 14px;--radius-sm: 10px;--header-bg: linear-gradient(180deg, #111827 0%, #0f172a 100%);--header-border: rgba(255, 255, 255, .08);--header-text-muted: rgba(255, 255, 255, .68);--subheader-bg: rgba(255, 255, 255, .82);--subheader-border: rgba(15, 23, 42, .08);--icon-button-bg: rgba(255, 255, 255, .08);--icon-button-hover-bg: rgba(255, 255, 255, .16);--icon-button-muted-bg: rgba(255, 255, 255, .04);--empty-card-bg: rgba(255, 255, 255, .92);--quick-reply-bg: #ffffff;--quick-reply-hover-bg: #f8fbff;--message-avatar-bot-bg: #e2e8f0;--message-avatar-user-bg: #dbeafe;--typing-avatar-bg: #e2e8f0;--typing-bubble-bg: #ffffff;--chat-input-bg: rgba(255, 255, 255, .9);--chat-input-border: rgba(148, 163, 184, .35);--chat-input-placeholder: #94a3b8;--chat-input-focus: rgba(37, 99, 235, .5);--widget-banner-bg: #fef2f2;--widget-banner-text: #991b1b;--widget-banner-border: rgba(153, 27, 27, .14)}html,body,#root{height:100%}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:transparent}*{box-sizing:border-box}button,textarea{font:inherit}button{border:0;cursor:pointer}.widget-shell{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(180deg,var(--widget-shell-top, #fbfdff) 0%,var(--bg) 100%);border:1px solid var(--border);border-radius:18px 18px 0 0;box-shadow:var(--shadow);animation:widget-enter .22s ease-out;min-width:0}.widget-shell--empty{place-items:center;display:grid;padding:1rem}@keyframes widget-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.widget-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;background:var(--header-bg);color:#fff;border-bottom:1px solid var(--header-border)}.widget-brand{display:flex;align-items:center;gap:.75rem;min-width:0}.brand-mark{width:2rem;height:2rem;flex:0 0 auto;color:#fff;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:999px;display:grid;place-items:center;box-shadow:0 8px 20px #2563eb52}.brand-mark svg{width:1rem;height:1rem}.widget-title-block{display:flex;flex-direction:column;min-width:0}.widget-title-block strong{font-size:.95rem;font-weight:700;line-height:1.1}.widget-title-block span{font-size:.75rem;color:var(--header-text-muted);line-height:1.1}.widget-subheader{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem 1rem;background:var(--subheader-bg);border-bottom:1px solid var(--subheader-border);color:var(--text-muted);font-size:.78rem}.widget-status{display:inline-flex;align-items:center;gap:.45rem;font-weight:600}.widget-status-dot{width:.5rem;height:.5rem;border-radius:999px;background:#16a34a;box-shadow:0 0 0 4px #16a34a1f}.widget-session-label{white-space:nowrap}.widget-header-buttons{display:flex;align-items:center;gap:.5rem}.icon-button{width:2rem;height:2rem;display:inline-grid;place-items:center;border-radius:999px;background:var(--icon-button-bg);color:#fff;transition:transform .15s ease,background .15s ease,opacity .15s ease}.icon-button:hover{background:var(--icon-button-hover-bg);transform:translateY(-1px)}.icon-button:focus-visible{outline:2px solid rgba(255,255,255,.8);outline-offset:2px}.icon-button svg{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-button--minimize{background:var(--icon-button-muted-bg)}.widget-banner{margin:.75rem .75rem 0;padding:.75rem .9rem;background:var(--widget-banner-bg);color:var(--widget-banner-text);border:1px solid var(--widget-banner-border);border-radius:var(--radius-md);font-size:.9rem;line-height:1.4}.message-list{flex:1;min-height:0;overflow-y:auto;padding:1rem .9rem .9rem;display:flex;flex-direction:column;gap:.75rem;scroll-behavior:smooth}.message-list::-webkit-scrollbar{width:.5rem}.message-list::-webkit-scrollbar-thumb{background:#64748b47;border-radius:999px}.empty-state{min-height:100%;display:grid;place-items:center;padding:1rem .25rem 1.5rem}.empty-state-card{width:100%;max-width:20rem;display:flex;flex-direction:column;align-items:center;gap:.85rem;text-align:center}.empty-state-kicker{margin:0;font-size:.73rem;font-weight:700;letter-spacing:0;text-transform:uppercase;color:var(--text-muted)}.empty-state h2{margin:0;font-size:1.15rem;line-height:1.2;letter-spacing:0}.empty-state-copy{margin:0;color:var(--text-muted);font-size:.92rem;line-height:1.5}.quick-replies{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.quick-reply{padding:.65rem .8rem;border-radius:999px;background:var(--quick-reply-bg);color:var(--text);border:1px solid var(--border);box-shadow:0 6px 16px #0f172a0a;transition:transform .15s ease,border-color .15s ease,background .15s ease;font-size:.88rem}.quick-reply:hover{transform:translateY(-1px);border-color:#2563eb40;background:var(--quick-reply-hover-bg)}.message-row{display:flex;align-items:flex-end;gap:.5rem;min-width:0}.message-row--user{justify-content:flex-end}.message-row--user .message-stack{align-items:flex-end}.message-stack{display:flex;flex-direction:column;gap:.25rem;min-width:0;max-width:min(84%,28rem)}.message-avatar{width:1.6rem;height:1.6rem;border-radius:999px;display:grid;place-items:center;flex:0 0 auto;font-size:.62rem;font-weight:700;letter-spacing:0}.message-avatar--bot,.message-avatar--reasoning{background:var(--message-avatar-bot-bg);color:#0f172a}.message-avatar--user{background:var(--message-avatar-user-bg);color:#1d4ed8}.message-bubble{padding:.85rem 1rem;border-radius:18px;line-height:1.5;white-space:pre-wrap;word-break:break-word;min-width:0;box-shadow:0 8px 22px #0f172a0f}.message-user{background:linear-gradient(180deg,#2f6bff,#1d4ed8);color:#fff;border-bottom-right-radius:6px}.message-bot{background:var(--bot-bubble-bg);color:var(--text);border:1px solid rgba(15,23,42,.08);border-bottom-left-radius:6px}.message-reasoning{background:var(--reasoning-bg);border:1px dashed rgba(100,116,139,.28);color:var(--text-muted);font-style:italic;border-bottom-left-radius:6px}.message-timestamp{font-size:.68rem;color:var(--text-muted);padding:0 .25rem}.typing-row{display:flex;align-items:flex-end;gap:.5rem}.typing-avatar{width:1.6rem;height:1.6rem;border-radius:999px;background:var(--typing-avatar-bg);color:#0f172a;font-size:.62rem;font-weight:700;display:grid;place-items:center;flex:0 0 auto}.typing-bubble{display:inline-flex;align-items:center;gap:.3rem;min-width:3.2rem;padding:.85rem .95rem;border-radius:18px;background:var(--typing-bubble-bg);border:1px solid rgba(15,23,42,.08);box-shadow:0 8px 22px #0f172a0f}.dot{height:.45rem;width:.45rem;background:#94a3b8;border-radius:999px;display:inline-block;animation:blink 1.2s infinite both}.dot:nth-child(2){animation-delay:.16s}.dot:nth-child(3){animation-delay:.32s}@keyframes blink{0%,80%,to{opacity:.18;transform:translateY(0)}40%{opacity:1;transform:translateY(-1px)}}.chat-input{padding:.9rem;background:var(--chat-input-bg);border-top:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chat-input-hint{display:flex;justify-content:space-between;gap:.75rem;padding:0 .1rem .6rem;color:var(--text-muted);font-size:.72rem}.chat-input form{display:flex;gap:.6rem;align-items:flex-end}.chat-input textarea{flex:1;min-width:0;min-height:3rem;max-height:9.75rem;padding:.8rem .95rem;border-radius:16px;border:1px solid var(--chat-input-border);background:var(--surface);color:var(--text);resize:none;outline:none;line-height:1.45;box-shadow:inset 0 1px #fff9;transition:border-color .15s ease,box-shadow .15s ease}.chat-input textarea::placeholder{color:var(--chat-input-placeholder)}.chat-input textarea:focus{border-color:var(--chat-input-focus);box-shadow:0 0 0 4px #2563eb1a}.chat-input textarea:disabled{background:#f8fafc;color:#94a3b8}.chat-input button{width:3rem;height:3rem;border-radius:16px;display:inline-grid;place-items:center;background:linear-gradient(180deg,var(--primary) 0%,var(--primary-strong) 100%);color:#fff;box-shadow:0 12px 26px #2563eb38;transition:transform .15s ease,opacity .15s ease,box-shadow .15s ease}.chat-input button:hover{transform:translateY(-1px);box-shadow:0 14px 28px #2563eb47}.chat-input button:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.chat-input button svg{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.widget-shell--empty .widget-empty-card{max-width:21rem;padding:1.2rem;background:var(--empty-card-bg);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow);display:flex;align-items:flex-start;gap:.85rem;text-align:left}.widget-shell--empty .widget-empty-card h1{margin:0 0 .25rem;font-size:1rem}.widget-shell--empty .widget-empty-card p{margin:0;color:var(--text-muted);font-size:.92rem;line-height:1.45}@media (max-width: 420px){.widget-header{padding:.8rem .85rem}.widget-title-block strong{font-size:.92rem}.message-list{padding:.9rem .75rem .8rem}.message-stack{max-width:90%}.widget-subheader{padding:.55rem .8rem}.chat-input{padding:.8rem .75rem}.chat-input-hint{flex-direction:column;gap:.2rem}}
