:root{--w-shadow-sm:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--w-shadow-md:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--w-shadow-lg:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--w-shadow-xl:0 25px 50px -12px #00000040;--w-radius:20px;--w-radius-sm:14px;--w-anim:.3s cubic-bezier(.16,1,.3,1)}.widget-container{z-index:2147483647;pointer-events:none;flex-direction:column;justify-content:flex-end;align-items:flex-end;padding:10px;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,sans-serif;display:flex;position:absolute;inset:0}.widget-button,.widget-chat-window{pointer-events:auto;margin:10px}.widget-button{cursor:pointer;border:none;border-radius:50%;width:60px;height:60px;margin:0;padding:0;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;position:relative;overflow:hidden;box-shadow:0 8px 24px #0003;justify-content:center!important;align-items:center!important;display:flex!important}.widget-button:hover{transform:scale(1.05)translateY(-2px);box-shadow:0 12px 32px #0000004d}.widget-button:active{transform:scale(.95)}.widget-button:before{content:"";background:linear-gradient(135deg,#fff3 0%,#fff0 100%);border-radius:50%;position:absolute;inset:0}.widget-button-content{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.widget-notification-dot{background-color:#ef4444;border:2px solid #fff;border-radius:50%;width:12px;height:12px;position:absolute;top:14px;right:14px;box-shadow:0 2px 4px #0000001a}.widget-chat-window{background:var(--w-bg);border-radius:var(--w-radius);width:380px;height:650px;max-height:calc(100vh - 120px);box-shadow:var(--w-shadow-xl);border:1px solid var(--w-border);-webkit-backdrop-filter:blur(12px);transform-origin:100% 100%;flex-direction:column;display:flex;overflow:hidden}.widget-header{border-bottom:1px solid var(--w-border);background:linear-gradient(#ffffff0d,#fff0);flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.widget-header-content{align-items:center;gap:12px;display:flex}.widget-avatar-small{background:var(--w-input-bg);width:40px;height:40px;box-shadow:inset 0 0 0 1px var(--w-border);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:50%;justify-content:center;align-items:center;display:flex}.widget-header-text{flex-direction:column;gap:2px;display:flex}.widget-header-title{color:var(--w-text);letter-spacing:-.02em;font-size:16px;font-weight:600}.widget-header-status{color:var(--w-text-sec);align-items:center;gap:6px;font-size:13px;display:flex}.status-dot-small{background-color:#10b981;border:1px solid #ffffff80;border-radius:50%;width:8px;height:8px;box-shadow:0 0 8px #10b98199}.widget-close-btn{cursor:pointer;width:32px;height:32px;color:var(--w-text-sec);background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.widget-close-btn:hover{color:var(--w-text);background:#fff3;transform:rotate(90deg)}.widget-content{background:var(--w-bg);flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.widget-messages{scroll-behavior:smooth;flex-direction:column;flex:1;gap:20px;padding:24px 20px;display:flex;overflow:hidden auto}.widget-messages::-webkit-scrollbar{width:4px}.widget-messages::-webkit-scrollbar-track{background:0 0}.widget-messages::-webkit-scrollbar-thumb{background:var(--w-scroll);border-radius:10px}.widget-message{align-items:flex-end;gap:12px;max-width:85%;animation:.4s cubic-bezier(.2,.9,.3,1) forwards slideUpFade;display:flex}@keyframes slideUpFade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.widget-message.user{flex-direction:row-reverse;align-self:flex-end}.widget-message-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;margin-bottom:2px;display:flex;box-shadow:0 2px 5px #0000001a}.widget-message-content{flex-direction:column;gap:6px;display:flex}.widget-message-bubble{border-radius:20px;padding:12px 18px;font-size:14px;line-height:1.5;position:relative;box-shadow:0 2px 4px #00000008}.widget-message-bubble.assistant{background:var(--w-msg-ast-bg);color:var(--w-msg-ast-txt);border-bottom-left-radius:4px}.widget-message-bubble.user{color:#fff;border-bottom-right-radius:4px}.markdown-content p{margin:0 0 8px}.markdown-content p:last-child{margin-bottom:0}.markdown-content strong{font-weight:700}.markdown-content em{font-style:italic}.markdown-content ul,.markdown-content ol{margin:8px 0;padding-left:20px}.markdown-content li{margin-bottom:4px}.markdown-content h1,.markdown-content h2,.markdown-content h3{margin:12px 0 8px;font-size:1.1em;font-weight:700}.markdown-content h1:first-child,.markdown-content h2:first-child,.markdown-content h3:first-child{margin-top:0}.markdown-content code{background:#0000001a;border-radius:4px;padding:2px 4px;font-family:monospace;font-size:.9em}.widget-message-bubble.user .markdown-content code{background:#fff3}.markdown-content pre{background:#0000001a;border-radius:8px;margin:8px 0;padding:8px;overflow-x:auto}.widget-message-bubble.user .markdown-content pre{background:#fff3}.markdown-content a{color:inherit;opacity:.9;text-decoration:underline}.markdown-content blockquote{opacity:.8;border-left:3px solid #0003;margin:8px 0;padding-left:10px;font-style:italic}.widget-message-bubble.user .markdown-content blockquote{border-left-color:#fff6}.widget-email-form{flex-direction:column;gap:8px;width:100%;margin-top:8px;display:flex}.widget-form-input{border:1px solid var(--w-border);background:var(--w-bg);width:100%;color:var(--w-text);border-radius:12px;outline:none;padding:10px;font-size:14px;transition:all .2s}.widget-form-input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb33}.widget-form-submit{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:12px;width:100%;padding:10px;font-size:14px;font-weight:500;transition:all .2s}.widget-form-submit:hover{background:#1d4ed8}.widget-sections{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.widget-options{flex-direction:column;align-items:flex-end;gap:8px;width:100%;margin-top:8px;display:flex}.widget-option-btn{cursor:pointer;text-align:center;cursor:pointer;background:0 0;border:1px solid;border-radius:12px;width:100%;margin-top:5px;padding:8px 12px;font-size:12px;font-weight:500;transition:all .2s cubic-bezier(.2,.9,.3,1)}.widget-section-chip{background:var(--w-input-bg);color:var(--w-text);cursor:pointer;border:1px solid #0000;border-radius:20px;padding:8px 14px;font-size:13px;font-weight:500;transition:all .2s cubic-bezier(.2,.9,.3,1);box-shadow:0 2px 5px #0000000d}.widget-section-chip:hover{background:var(--w-hover);transform:translateY(-2px);box-shadow:0 4px 10px #0000001a}.widget-section-chip.active{color:#fff;border-color:#0000;box-shadow:0 4px 12px #0003}.widget-typing{background:var(--w-msg-ast-bg);border-radius:20px 20px 20px 4px;align-self:flex-start;gap:5px;width:fit-content;padding:16px 20px;display:flex;box-shadow:0 2px 4px #00000008}.widget-typing span{background:#9ca3af;border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite both bounce}.widget-typing span:first-child{animation-delay:-.32s}.widget-typing span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.widget-input-container{background:var(--w-bg-sec);border-top:1px solid var(--w-border);flex-direction:column;gap:12px;padding:16px 20px 20px;display:flex}.widget-input-section-badge{background:var(--w-input-bg);color:var(--w-text-sec);border:1px solid var(--w-border);border-radius:10px;justify-content:space-between;align-items:center;width:fit-content;padding:6px 12px;font-size:11px;display:flex}.widget-input-section-badge button{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;align-items:center;margin-left:8px;transition:opacity .2s;display:flex}.widget-input-section-badge button:hover{opacity:1}.widget-input-wrapper{background:var(--w-input-bg);border:1px solid var(--w-border);border-radius:28px;align-items:center;gap:8px;padding:6px 6px 6px 18px;transition:all .2s;display:flex;box-shadow:inset 0 2px 4px #0000000d}.widget-input-wrapper:focus-within{background:#ffffff0d;border-color:#fff6;box-shadow:inset 0 2px 4px #00000005}.widget-input{color:var(--w-text);background:0 0;border:none;outline:none;flex:1;min-height:24px;padding:8px 0;font-size:15px}.widget-input::placeholder{color:var(--w-text-sec)}.widget-send-btn{cursor:pointer;background:var(--w-input-bg);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;transition:all .2s cubic-bezier(.2,.9,.3,1);display:flex}.widget-send-btn:hover:not(:disabled){background:var(--w-hover);transform:scale(1.1)}.widget-send-btn:disabled{opacity:.3;cursor:not-allowed;transform:none}.widget-tab-bar{border-top:1px solid var(--w-border);background:var(--w-bg);padding:4px;display:flex}.widget-tab-btn{color:var(--w-text-sec);cursor:pointer;background:0 0;border:none;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;padding:10px;font-size:11px;transition:all .2s;display:flex}.widget-tab-btn:hover{background:var(--w-hover);color:var(--w-text)}.widget-tab-btn.active{background:var(--w-input-bg);font-weight:600}.widget-footer{text-align:center;color:var(--w-text-sec);background:var(--w-bg-sec);opacity:.6;padding:10px;font-size:10px}@media (max-width:768px){.widget-container{pointer-events:none;justify-content:flex-end;align-items:flex-end;width:100%;height:100%;display:flex;bottom:0;left:0;right:0}.widget-button{pointer-events:auto;width:56px;height:56px;margin-bottom:20px;margin-right:20px}.widget-chat-window{transform-origin:bottom;border:none;border-top:1px solid #ffffff1a;position:fixed;width:100vw!important;height:85dvh!important;max-height:85dvh!important;box-shadow:none!important;border-radius:24px 24px 0 0!important;margin:0!important;inset:auto 0 0!important}.widget-header:before{content:"";background:#ffffff26;border-radius:2px;width:40px;height:4px;position:absolute;top:8px;left:50%;transform:translate(-50%)}.widget-header{padding:20px 16px 12px}.widget-input-container{padding-bottom:max(20px,env(safe-area-inset-bottom))}}
