.chat-widget{position:fixed;right:24px;bottom:24px;z-index:9999;display:flex;flex-direction:column-reverse;align-items:flex-end;gap:12px;pointer-events:none}.chat-widget>*{pointer-events:auto}.chat-launcher{min-width:132px;min-height:48px;border-radius:12px!important;border:1px solid var(--border)!important;background:var(--surface-strong)!important;color:var(--heading)!important;box-shadow:var(--shadow)!important;font-size:.86rem!important;font-weight:700!important;opacity:0;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease,border-color .18s ease!important}.chat-launcher-visible{opacity:1;transform:translateY(0)}.chat-launcher:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--border))!important;background:var(--surface-muted)!important}.chat-launcher-muted{color:var(--primary)!important}.chat-launcher-dot{width:7px;height:7px;border-radius:50%;background:var(--accent-mint);box-shadow:0 0 0 2px var(--surface-strong)}.chat-window-wrapper{position:absolute;right:0;bottom:62px;width:min(410px,calc(100vw - 32px));transition:opacity .18s ease,transform .18s ease}.cw-enter{opacity:1;transform:translateY(0)}.cw-exit{opacity:0;transform:translateY(10px)}.chat-window{height:min(620px,calc(100vh - 110px));max-height:620px;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);color:var(--foreground)}.chat-header,.chat-window{display:flex;background:var(--surface-strong)}.chat-header{flex-shrink:0;align-items:center;justify-content:space-between;gap:12px;min-height:68px;padding:12px 14px;border-bottom:1px solid var(--border-soft)}.chat-header-left{display:flex;min-width:0;align-items:center;gap:10px}.chat-header-name{overflow:hidden;color:var(--heading);font-size:.9rem;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.chat-header-name,.chat-header-status{font-family:var(--font-sans);line-height:1.2}.chat-header-status{display:flex;align-items:center;gap:6px;margin-top:3px;color:var(--muted);font-size:.71rem}.chat-status-dot{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:var(--accent-mint)}.chat-header-actions{display:flex;flex-shrink:0;align-items:center;gap:3px}.chat-header-btn{width:34px!important;height:34px!important;min-width:34px!important;padding:0!important;border-radius:8px!important;color:var(--muted-strong)!important}.chat-header-btn:hover{background:var(--surface-muted)!important;color:var(--heading)!important}.chat-messages{display:flex;flex:1;flex-direction:column;gap:13px;overflow-y:auto;padding:18px 16px 14px;background:var(--surface-subtle);scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.chat-messages::-webkit-scrollbar{width:5px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{border-radius:4px;background:var(--border)}.chat-msg{display:flex;max-width:94%;align-items:flex-start;gap:8px}.bot-msg{align-self:flex-start}.user-msg{align-self:flex-end;flex-direction:row-reverse;max-width:88%}.chat-msg-brand{flex:0 0 auto;margin-top:2px}.chat-bubble{min-width:0;padding:10px 12px;border-radius:12px;font-family:var(--font-sans);font-size:.86rem;line-height:1.55;overflow-wrap:anywhere}.bot-bubble{border:1px solid var(--border-soft);border-top-left-radius:4px;background:var(--surface-strong);color:var(--foreground)}.user-bubble{border:1px solid var(--primary);border-top-right-radius:4px;background:var(--primary);color:#ffffff}[data-theme=dark] .user-bubble{color:#0b0e14}.user-bubble b,.user-bubble strong{color:inherit;font-weight:750}.bot-bubble b,.bot-bubble strong{color:var(--heading);font-weight:750}.chat-line{margin:0;padding:0}.chat-line+.chat-line{margin-top:5px}.chat-bullet{display:flex;align-items:flex-start;gap:8px;margin:5px 0}.chat-bullet-dot{width:5px;height:5px;flex:0 0 5px;margin-top:8px;border-radius:50%;background:var(--primary)}.user-bubble .chat-bullet-dot{background:currentColor;opacity:.65}.chat-feedback-row{display:flex;align-items:center;gap:4px;margin-top:9px;padding-top:7px;border-top:1px solid var(--border-soft)}.chat-feedback-btn{width:30px!important;height:30px!important;min-width:30px!important;padding:0!important;border-radius:7px!important;color:var(--muted)!important}.chat-feedback-btn:hover{background:var(--surface-muted)!important;color:var(--heading)!important}.chat-feedback-sent{color:var(--muted);font-family:var(--font-sans);font-size:.7rem;font-weight:650}.feedback-up{color:var(--accent-mint)}.feedback-down{color:var(--red-primary)}.chat-cards{display:flex;flex-direction:column;gap:8px;margin-top:11px}.chat-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--border-soft);border-radius:10px;background:var(--surface-subtle);color:inherit;text-decoration:none;transition:border-color .15s ease,background .15s ease,transform .15s ease}.chat-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 42%,var(--border-soft));background:var(--surface-muted)}.chat-card-body{min-width:0;flex:1}.chat-card-title{color:var(--heading);font-family:var(--font-sans);font-size:.8rem;font-weight:700;line-height:1.25}.chat-card-desc{margin-top:3px;color:var(--muted);font-family:var(--font-sans);font-size:.72rem;line-height:1.4}.chat-card-cta{flex-shrink:0;gap:4px;color:var(--primary);font-family:var(--font-sans);font-size:.7rem;font-weight:700;white-space:nowrap}.chat-card-cta,.chat-typing{display:flex;align-items:center}.chat-typing{gap:5px;min-height:38px;padding:10px 13px;border:1px solid var(--border-soft);border-radius:12px;border-top-left-radius:4px;background:var(--surface-strong)}.chat-typing-dot{width:6px;height:6px;border-radius:50%;background:var(--muted);opacity:.45;animation:chatBounce 1.15s ease-in-out infinite}.chat-typing-dot:nth-child(2){animation-delay:.14s}.chat-typing-dot:nth-child(3){animation-delay:.28s}@keyframes chatBounce{0%,60%,to{transform:translateY(0);opacity:.35}30%{transform:translateY(-4px);opacity:.9}}.chat-quick-replies{flex-shrink:0;padding:12px 14px;border-top:1px solid var(--border-soft);background:var(--surface-strong)}.chat-quick-label{margin-bottom:8px;color:var(--muted);font-family:var(--font-sans);font-size:.67rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.chat-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.chat-action-option{min-height:42px!important;justify-content:space-between!important;gap:10px!important;border-radius:8px!important;border:1px solid var(--border-soft)!important;background:var(--surface-subtle)!important;color:var(--foreground)!important;padding:9px 11px!important;font-family:var(--font-sans)!important;font-size:.76rem!important;font-weight:680!important;line-height:1.25!important;white-space:normal!important;text-align:left!important;box-shadow:none!important}.chat-action-option:hover:not(:disabled){transform:translateY(-1px)!important;border-color:color-mix(in srgb,var(--primary) 42%,var(--border-soft))!important;background:var(--surface-muted)!important;color:var(--heading)!important}.chat-input-area{flex-shrink:0;padding:10px 12px 11px;border-top:1px solid var(--border-soft);background:var(--surface-strong)}.chat-flow-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;padding:7px 8px 7px 10px;border-left:3px solid var(--primary);background:var(--surface-muted);color:var(--muted-strong);font-size:.72rem;line-height:1.35}.chat-cancel-flow{flex:0 0 auto;border-radius:7px!important;color:var(--primary)!important}.chat-composer{display:flex;align-items:flex-end;gap:8px}.chat-input{box-sizing:border-box;min-width:0;min-height:43px;max-height:112px;flex:1;resize:none;overflow-y:auto;padding:10px 12px;border:1px solid var(--border);border-radius:10px;outline:none;background:var(--surface-strong);color:var(--heading);font-family:var(--font-sans);font-size:16px;line-height:1.4;transition:border-color .15s ease,box-shadow .15s ease}.chat-input::-moz-placeholder{color:var(--muted);opacity:.8}.chat-input::placeholder{color:var(--muted);opacity:.8}.chat-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}.chat-input:disabled{cursor:not-allowed;opacity:.55}.chat-send-btn{width:43px!important;height:43px!important;min-width:43px!important;flex:0 0 43px;border-radius:10px!important;padding:0!important;box-shadow:none!important}.chat-send-btn:hover:not(:disabled){transform:translateY(-1px)!important}.chat-input-meta{display:flex;justify-content:space-between;gap:10px;margin-top:6px;padding:0 2px;color:var(--muted);font-size:.64rem;line-height:1.2}@media (max-width:640px) and (min-width:481px){.chat-window-wrapper{width:min(390px,calc(100vw - 28px))}}@media (max-width:480px){.chat-widget{right:0;bottom:0;left:0;align-items:stretch}.chat-window-wrapper{position:fixed;inset:0;z-index:10000;width:100%;max-height:100dvh;padding-bottom:env(safe-area-inset-bottom,0)}.chat-window{height:100dvh;max-height:100dvh;border:none;border-radius:0;box-shadow:none}.chat-launcher{position:fixed;right:max(14px,env(safe-area-inset-right,14px));bottom:max(14px,env(safe-area-inset-bottom,14px));width:auto;min-width:126px;align-self:flex-end}.chat-header{min-height:64px;padding:max(10px,env(safe-area-inset-top,10px)) 12px 10px}.chat-messages{padding:14px 12px 12px}.chat-msg{max-width:96%}.user-msg{max-width:90%}.chat-bubble{padding:9px 11px;font-size:.84rem}.chat-quick-replies{padding:10px 12px}.chat-quick-grid{grid-template-columns:1fr}.chat-action-option{min-height:44px!important}.chat-input-area{padding:9px 10px max(9px,env(safe-area-inset-bottom,9px))}.chat-input-meta span:first-child{display:none}.chat-input-meta{justify-content:flex-end}}@media (max-height:560px) and (orientation:landscape){.chat-window{height:calc(100dvh - 24px)}.chat-messages{padding-block:10px;gap:9px}.chat-quick-replies{padding-block:8px}}.chat-action-card{flex-shrink:0;margin:0;padding:13px 14px 12px;border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);background:color-mix(in srgb,var(--primary-soft) 38%,var(--surface-strong))}.chat-action-heading{display:flex;align-items:flex-start;gap:10px}.chat-action-icon{display:inline-flex;width:32px;height:32px;flex:0 0 32px;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border-soft));border-radius:8px;background:var(--surface-strong);color:var(--primary)}.chat-action-title{color:var(--heading);font-size:.82rem;font-weight:750;line-height:1.25}.chat-action-description{margin-top:3px;color:var(--muted);font-size:.7rem;line-height:1.4}.chat-action-summary{display:grid;gap:0;margin:11px 0 0;overflow:hidden;border:1px solid var(--border-soft);border-radius:9px;background:var(--surface-strong)}.chat-action-row{display:grid;grid-template-columns:84px minmax(0,1fr);gap:10px;padding:8px 10px;border-bottom:1px solid var(--border-soft)}.chat-action-row:last-child{border-bottom:0}.chat-action-row dt{color:var(--muted);font-size:.68rem;font-weight:650}.chat-action-row dd{min-width:0;margin:0;color:var(--foreground);font-size:.7rem;font-weight:600;line-height:1.4;overflow-wrap:anywhere}.chat-action-error{margin-top:9px;padding:8px 9px;border:1px solid color-mix(in srgb,var(--red-primary) 45%,var(--border-soft));border-radius:8px;background:color-mix(in srgb,var(--red-soft) 55%,var(--surface-strong));color:var(--red-dark);font-size:.7rem;line-height:1.4}[data-theme=dark] .chat-action-error{color:#fecaca;background:rgba(69,10,10,.34)}.chat-action-controls{display:flex;gap:8px;margin-top:10px}.chat-action-controls>*{flex:1}.chat-action-hint{margin-top:7px;color:var(--muted);font-size:.64rem;text-align:center}.chat-action-confirm{box-shadow:none!important}.chat-spin{animation:chatSpin .8s linear infinite}@keyframes chatSpin{to{transform:rotate(1turn)}}[data-theme=dark] .chat-header,[data-theme=dark] .chat-input-area,[data-theme=dark] .chat-quick-replies,[data-theme=dark] .chat-window{background:var(--surface-strong)}[data-theme=dark] .chat-messages{background:var(--surface-subtle)}[data-theme=dark] .chat-action-card{background:color-mix(in srgb,var(--primary-soft) 52%,var(--surface-strong))}[data-theme=dark] .bot-bubble,[data-theme=dark] .chat-action-icon,[data-theme=dark] .chat-action-summary,[data-theme=dark] .chat-card,[data-theme=dark] .chat-input{background:#141a26}[data-theme=dark] .chat-action-option:hover:not(:disabled),[data-theme=dark] .chat-card:hover{background:#1a2230!important}.chat-action-controls button:focus-visible,.chat-action-option:focus-visible,.chat-header-btn:focus-visible,.chat-send-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 58%,transparent);outline-offset:2px}@media (max-width:480px){.chat-action-card{padding:11px 12px 10px}.chat-action-row{grid-template-columns:72px minmax(0,1fr)}}