*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0d0d12;--panel:#16161e;--panel-2:#1d1d28;--border:#2a2a38;--text:#ececf1;--muted:#9a9aad;--accent:#7c5cff;--accent-2:#5a3ee8;--dur-fast:.12s;--dur-base:.22s;--dur-slow:.36s;--ease-out:cubic-bezier(.22, .85, .36, 1);--ease-spring:cubic-bezier(.34, 1.24, .64, 1)}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.shell{flex-direction:column;gap:12px;max-width:440px;min-height:100dvh;margin:0 auto;padding:16px 12px 24px;display:flex}.widget{background:var(--panel);border:1px solid var(--border);border-radius:16px;flex-direction:column;flex:1;min-height:520px;display:flex;overflow:hidden}.head{border-bottom:1px solid var(--border);background:var(--panel-2);align-items:center;gap:10px;padding:14px 16px;display:flex}.head .dot{width:10px;height:10px;animation:status-pulse 2.8s var(--ease-out) infinite;background:#3ddc84;border-radius:50%;flex-shrink:0}@keyframes status-pulse{0%,to{box-shadow:0 0 #3ddc8459}55%{box-shadow:0 0 0 5px #3ddc8400}}.head strong{font-size:14px;display:block}.head span{color:var(--muted);font-size:12px}.head .restart{border:1px solid var(--border);color:var(--muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), opacity var(--dur-fast) var(--ease-out);background:0 0;border-radius:8px;margin-left:auto;padding:5px 10px;font-size:12px}.head .restart:hover:not(:disabled){color:var(--text);border-color:var(--accent)}.head .restart:disabled{opacity:.5;cursor:default}.thread{flex-direction:column;flex:1;gap:10px;padding:16px 12px;display:flex;overflow-y:auto}.row{animation:row-in var(--dur-base) var(--ease-out) both;flex-direction:column;gap:6px;display:flex}.row.settled{animation:none}@keyframes row-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.row.user{align-items:flex-end}.row.assistant{align-items:flex-start}.bubble{white-space:pre-wrap;word-break:break-word;border-radius:14px;max-width:85%;padding:10px 13px;font-size:14px;line-height:1.5}.row.assistant .bubble{background:var(--panel-2);border:1px solid var(--border);border-bottom-left-radius:4px}.row.user .bubble{background:var(--accent);color:#fff;border-bottom-right-radius:4px}.bubble.typing{align-items:center;gap:4px;height:37px;display:flex}.bubble.typing span{background:var(--muted);width:6px;height:6px;animation:typing-dot 1.2s var(--ease-out) infinite;border-radius:50%}.bubble.typing span:nth-child(2){animation-delay:.15s}.bubble.typing span:nth-child(3){animation-delay:.3s}@keyframes typing-dot{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.caret{vertical-align:text-bottom;opacity:.6;background:currentColor;width:2px;height:1em;margin-left:1px;animation:1s steps(2,start) infinite caret-blink;display:inline-block}@keyframes caret-blink{to{opacity:0}}.errorBubble button{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;text-decoration:underline}.checkout{color:#08130c;transition:transform var(--dur-fast) var(--ease-out);animation:checkout-in var(--dur-slow) var(--ease-spring) both, checkout-pulse 1.4s var(--ease-out) var(--dur-slow) 1;background:#3ddc84;border-radius:10px;padding:10px 16px;font-size:14px;font-weight:600;text-decoration:none;display:inline-block}.checkout:hover{transform:translateY(-1px)}.checkout:active{transform:scale(.98)}@keyframes checkout-in{0%{opacity:0;transform:scale(.92)translateY(6px)}to{opacity:1;transform:none}}@keyframes checkout-pulse{0%,to{box-shadow:0 0 #3ddc8400}40%{box-shadow:0 0 0 6px #3ddc842e}}.note{color:var(--muted);animation:row-in var(--dur-base) var(--ease-out) both;font-size:12px;font-style:italic}.composer{border-top:1px solid var(--border);gap:8px;padding:10px 12px;display:flex}.composer input{background:var(--panel-2);border:1px solid var(--border);color:var(--text);transition:border-color var(--dur-fast) var(--ease-out);border-radius:10px;outline:none;flex:1;padding:10px 12px;font-size:14px}.composer input:focus{border-color:var(--accent)}.composer button{background:var(--accent);color:#fff;cursor:pointer;transition:opacity var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border:none;border-radius:10px;padding:0 18px;font-size:14px;font-weight:600}.composer button:active:not(:disabled){transform:scale(.97)}.composer button:disabled{opacity:.5;cursor:default}.legal{color:var(--muted);text-align:center;padding:0 14px 12px;font-size:11px}.chips{flex-wrap:wrap;gap:8px;padding:4px 0 8px;display:flex}.chip{border:1px solid var(--border);background:var(--panel-2);color:var(--text);cursor:pointer;text-align:left;transition:border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);animation:chip-in var(--dur-base) var(--ease-out) both;animation-delay:calc(min(var(--i,0), 6) * 40ms);border-radius:999px;padding:8px 12px;font-size:13px}.chip:hover{border-color:var(--accent);transform:translateY(-1px)}.chip:active{transform:scale(.97)}@keyframes chip-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.chip.on{background:var(--accent);border-color:var(--accent)}.chip.done{background:var(--accent-2);border-color:var(--accent-2)}.hint{color:var(--muted);margin:0;padding:0 14px 8px;font-size:11px}.chip.offer{background:var(--accent);border-color:var(--accent);font-weight:600}.emailPrompt{transform-origin:top;animation:prompt-in var(--dur-slow) var(--ease-out) both;flex-direction:column;gap:6px;padding:4px 0 8px;display:flex}@keyframes prompt-in{0%{opacity:0;transform:translateY(-4px)scaleY(.96)}to{opacity:1;transform:none}}.emailPrompt label{color:var(--muted);font-size:12px}.emailRow{gap:8px;display:flex}.emailRow input{background:var(--panel-2);border:1px solid var(--border);min-width:0;color:var(--text);transition:border-color var(--dur-fast) var(--ease-out);border-radius:10px;outline:none;flex:1;padding:10px 12px;font-size:14px}.emailRow input:focus{border-color:var(--accent)}.emailRow button{background:var(--accent);color:#fff;cursor:pointer;transition:opacity var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border:none;border-radius:10px;padding:0 18px;font-size:14px;font-weight:600}.emailRow button:active:not(:disabled){transform:scale(.97)}.emailRow button:disabled{opacity:.5;cursor:default}.emailPrompt .hint{padding:0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.bubble.typing span,.caret{opacity:.6}.chip:hover,.checkout:hover,.chip:active,.checkout:active,.composer button:active:not(:disabled),.emailRow button:active:not(:disabled){transform:none}}
