.chat-widget-root{position:relative;font-family:var(--font-body,system-ui,sans-serif);z-index:9999}.chat-toggle-wrapper{position:fixed;bottom:28px;right:28px;z-index:9999;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.chat-toggle-btn{position:relative;width:60px;height:60px;border-radius:50%;background:var(--gradient,linear-gradient(135deg,#3163cf 0,#5a87e8 100%));color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px rgba(49,99,207,.38),0 0 20px rgba(99,102,241,.2);cursor:pointer;border:1px solid hsla(0,0%,100%,.2);transition:all .35s cubic-bezier(.34,1.56,.64,1);outline:none}.chat-toggle-btn:hover{transform:scale(1.08) translateY(-2px);box-shadow:0 14px 38px rgba(49,99,207,.48),0 0 30px rgba(99,102,241,.35)}.chat-toggle-btn:active{transform:scale(.95)}.chat-toggle-btn.is-open{background:var(--surface-2,#181825);color:var(--text,#fff);border-color:var(--border,hsla(0,0%,100%,.15));box-shadow:0 8px 24px rgba(0,0,0,.25);transform:rotate(90deg)}.chat-toggle-btn.is-open:hover{transform:rotate(90deg) scale(1.08)}.chat-toggle-icon{display:flex;align-items:center;justify-content:center;transition:transform .3s ease}.chat-toggle-badge{position:absolute;top:2px;right:2px;width:14px;height:14px;background-color:#22c55e;border:2.5px solid var(--surface,#0a0a12);border-radius:50%;animation:chat-pulse 2s infinite}@keyframes chat-pulse{0%{box-shadow:0 0 0 0 rgba(34,197,94,.7)}70%{box-shadow:0 0 0 8px rgba(34,197,94,0)}to{box-shadow:0 0 0 0 rgba(34,197,94,0)}}.chat-preview-tooltip{position:absolute;right:calc(100% + 14px);bottom:8px;display:flex;align-items:center;gap:12px;background:var(--surface,#fff);color:var(--text,#04070d);padding:10px 16px 10px 12px;border-radius:100px;box-shadow:0 10px 30px rgba(0,0,0,.15),0 2px 8px rgba(0,0,0,.08);border:1px solid var(--border,hsla(0,0%,100%,.1));cursor:pointer;animation:chat-slide-in .4s cubic-bezier(.22,1,.36,1);white-space:nowrap;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:transform .2s ease,box-shadow .2s ease}.chat-preview-tooltip:hover{transform:translateY(-2px);box-shadow:0 14px 35px rgba(0,0,0,.2)}.chat-preview-tooltip__avatar{position:relative;width:32px;height:32px;border-radius:50%;background:var(--gradient,linear-gradient(135deg,#3163cf 0,#5a87e8 100%));color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.chat-preview-tooltip__status-dot{position:absolute;bottom:-1px;right:-1px;width:9px;height:9px;background:#22c55e;border:1.5px solid var(--surface,#fff);border-radius:50%}.chat-preview-tooltip__text{display:flex;flex-direction:column;line-height:1.25}.chat-preview-tooltip__text strong{font-size:.8125rem;font-weight:700;color:var(--text,#04070d)}.chat-preview-tooltip__text span{font-size:.725rem;color:var(--muted,#5b6c8f)}.chat-preview-tooltip__close{background:none;border:none;color:var(--muted,#5b6c8f);font-size:1.1rem;line-height:1;padding:2px 4px;cursor:pointer;border-radius:50%;margin-left:4px;transition:color .2s}.chat-preview-tooltip__close:hover{color:var(--text,#04070d)}@keyframes chat-slide-in{0%{opacity:0;transform:translateX(10px) scale(.95)}to{opacity:1;transform:translateX(0) scale(1)}}.chat-window{position:fixed;bottom:102px;right:28px;width:min(390px,calc(100vw - 36px));height:min(580px,calc(100vh - 130px));background:var(--surface,#fff);border:1px solid var(--border,hsla(0,0%,100%,.1));border-radius:24px;box-shadow:0 24px 60px rgba(0,0,0,.22),0 0 40px rgba(49,99,207,.1);display:flex;flex-direction:column;overflow:hidden;z-index:9999;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);opacity:0;transform:translateY(20px) scale(.94);transform-origin:bottom right;pointer-events:none;transition:opacity .3s cubic-bezier(.22,1,.36,1),transform .35s cubic-bezier(.34,1.35,.64,1)}.chat-window.is-active{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:var(--surface-2,#f8faff);border-bottom:1px solid var(--border,rgba(4,7,13,.08))}[data-theme=dark] .chat-header{background:rgba(17,17,28,.85)}.chat-header__info{display:flex;align-items:center;gap:12px}.chat-header__avatar{position:relative;width:38px;height:38px;border-radius:12px;background:var(--gradient,linear-gradient(135deg,#3163cf 0,#5a87e8 100%));color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-display,sans-serif);font-weight:800;font-size:.85rem;letter-spacing:-.02em;box-shadow:0 4px 12px rgba(49,99,207,.25)}.chat-header__status-dot{position:absolute;bottom:-2px;right:-2px;width:10px;height:10px;background:#22c55e;border:2px solid var(--surface-2,#f8faff);border-radius:50%}.chat-header__details{display:flex;flex-direction:column}.chat-header__title{font-size:.9375rem;font-weight:700;color:var(--text,#04070d);font-family:var(--font-display,sans-serif);line-height:1.2}.chat-header__subtitle{font-size:.725rem;color:var(--muted,#5b6c8f);line-height:1.3}.chat-header__actions{display:flex;align-items:center;gap:4px}.chat-header__action-btn{width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:var(--muted,#5b6c8f);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.chat-header__action-btn:hover{background:var(--surface-3,rgba(0,0,0,.05));color:var(--text,#04070d)}.chat-body{flex:1 1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:14px;scroll-behavior:smooth;outline:none}.chat-body::-webkit-scrollbar{width:5px}.chat-body::-webkit-scrollbar-track{background:transparent}.chat-body::-webkit-scrollbar-thumb{background:var(--border,rgba(0,0,0,.1));border-radius:10px}.chat-messages-list{display:flex;flex-direction:column;gap:12px}.chat-message{display:flex;align-items:flex-end;gap:8px;max-width:88%;animation:chat-msg-appear .28s cubic-bezier(.22,1,.36,1)}@keyframes chat-msg-appear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chat-message--bot{align-self:flex-start}.chat-message--user{align-self:flex-end;flex-direction:row-reverse}.chat-message__avatar{width:26px;height:26px;border-radius:8px;background:var(--gradient,linear-gradient(135deg,#3163cf 0,#5a87e8 100%));color:#fff;font-size:.65rem;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:18px}.chat-message__content{display:flex;flex-direction:column;gap:4px}.chat-message--user .chat-message__content{align-items:flex-end}.chat-message__bubble{padding:11px 15px;font-size:.875rem;line-height:1.5;border-radius:18px;word-break:break-word;white-space:pre-wrap;position:relative}.chat-message--bot .chat-message__bubble{background:var(--surface-2,#f0f4fd);color:var(--text,#04070d);border:1px solid var(--border,rgba(0,0,0,.06));border-bottom-left-radius:4px}[data-theme=dark] .chat-message--bot .chat-message__bubble{background:var(--surface-2,#141422);border-color:var(--border,hsla(0,0%,100%,.08))}.chat-message--user .chat-message__bubble{background:var(--gradient,linear-gradient(135deg,#3163cf 0,#5a87e8 100%));color:#fff;border-bottom-right-radius:4px;box-shadow:0 4px 14px rgba(49,99,207,.25)}.chat-message--error .chat-message__bubble{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.3);color:var(--text,#04070d)}.chat-message__text{margin:0}.chat-message__link,.chat-message__text a{color:var(--primary,#3163cf);text-decoration:underline;text-underline-offset:2px;font-weight:500;transition:opacity .15s ease;word-break:break-all}.chat-message__link:hover,.chat-message__text a:hover{opacity:.8}[data-theme=dark] .chat-message--bot .chat-message__link,[data-theme=dark] .chat-message--bot .chat-message__text a{color:#60a5fa}.chat-message--user .chat-message__link,.chat-message--user .chat-message__text a{color:#fff;text-decoration:underline;text-underline-offset:2px;font-weight:600}.chat-message__time{font-size:.675rem;color:var(--muted,#5b6c8f);padding:0 4px}.chat-bubble--loading{padding:12px 18px;display:flex;align-items:center}.chat-typing-dots{display:flex;align-items:center;gap:5px}.chat-typing-dot{width:7px;height:7px;border-radius:50%;background:var(--muted,#5b6c8f);opacity:.6;animation:chat-bounce 1.4s ease-in-out infinite both}.chat-typing-dot:first-child{animation-delay:-.32s}.chat-typing-dot:nth-child(2){animation-delay:-.16s}.chat-typing-dot:nth-child(3){animation-delay:0s}@keyframes chat-bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1.1);opacity:1;background:var(--accent-1,#3163cf)}}.chat-suggestions{margin-top:6px;display:flex;flex-direction:column;gap:8px;animation:chat-msg-appear .4s ease}.chat-suggestions__label{font-size:.725rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted,#5b6c8f)}.chat-suggestions__list{display:flex;flex-wrap:wrap;gap:6px}.chat-suggestion-chip{background:var(--surface-2,#f0f4fd);border:1px solid var(--border,rgba(4,7,13,.08));color:var(--text,#04070d);font-size:.775rem;font-weight:500;padding:6px 12px;border-radius:100px;cursor:pointer;transition:all .2s cubic-bezier(.22,1,.36,1);text-align:left}[data-theme=dark] .chat-suggestion-chip{background:var(--surface-2,#141422)}.chat-suggestion-chip:hover{background:var(--surface-3,#e3ebf9);border-color:var(--border-hover,rgba(49,99,207,.28));transform:translateY(-1px);color:var(--accent-1,#3163cf)}[data-theme=dark] .chat-suggestion-chip:hover{background:var(--surface-3,#1e1e32);color:var(--accent-2,#22d3ee)}.chat-footer{padding:12px 16px 10px;background:var(--surface-2,#f8faff);border-top:1px solid var(--border,rgba(4,7,13,.08));display:flex;flex-direction:column;gap:6px}[data-theme=dark] .chat-footer{background:rgba(17,17,28,.85)}.chat-input-form{display:flex;align-items:flex-end;gap:8px;background:var(--surface,#fff);border:1px solid var(--border,rgba(4,7,13,.12));border-radius:14px;padding:6px 8px 6px 12px;transition:border-color .2s,box-shadow .2s}.chat-input-form:focus-within{border-color:var(--accent-1,#3163cf);box-shadow:0 0 0 3px rgba(49,99,207,.15)}[data-theme=dark] .chat-input-form{background:var(--surface,#0a0a12)}.chat-input{flex:1 1;border:none;background:transparent;color:var(--text,#04070d);font-family:var(--font-body,inherit);font-size:.875rem;line-height:1.4;resize:none;max-height:100px;min-height:24px;padding:4px 0;outline:none}.chat-input::placeholder{color:var(--muted,#5b6c8f);opacity:.8}.chat-send-btn{width:32px;height:32px;border-radius:10px;background:var(--gradient,linear-gradient(135deg,#3163cf 0,#5a87e8 100%));color:#fff;display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;flex-shrink:0;transition:transform .2s,opacity .2s,background .2s}.chat-send-btn:hover:not(:disabled){transform:scale(1.06)}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed;background:var(--muted,#5b6c8f)}.chat-send-spinner{width:14px;height:14px;border:2px solid hsla(0,0%,100%,.3);border-top-color:#fff;border-radius:50%;animation:chat-spin .7s linear infinite}@keyframes chat-spin{to{transform:rotate(1turn)}}.chat-branding{text-align:center;font-size:.65rem;color:var(--muted,#5b6c8f);letter-spacing:.02em}.chat-branding strong{color:var(--text,#04070d);font-weight:600}@media (max-width:480px){.chat-toggle-wrapper{bottom:20px;right:20px}.chat-preview-tooltip{display:none}.chat-window{bottom:88px;right:16px;left:16px;width:auto;height:min(540px,calc(100vh - 110px));border-radius:20px}}