*,::after,::before{margin:0;padding:0;box-sizing:border-box}:root{--bg:#f7f7f8;--chat-bg:#ffffff;--user-bubble:#e8e8ed;--ai-text:#1a1a1a;--user-text:#1a1a1a;--muted:#8e8ea0;--border:#e5e5e5;--input-bg:#ffffff;--header-bg:#ffffff;--dot:#8e8ea0;--accent:#1a1a1a}body,html{height:100%;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;font-size:16px;line-height:1.5;color:var(--ai-text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#header{position:fixed;top:0;left:0;right:0;z-index:10;background:var(--header-bg);border-bottom:1px solid var(--border)}.header-inner{max-width:768px;margin:0 auto;padding:12px 16px;display:flex;align-items:center;justify-content:space-between}.header-left{display:flex;align-items:center;gap:8px}.header-icon{width:20px;height:20px;color:var(--muted)}.header-title{font-size:14px;font-weight:600;color:var(--ai-text);letter-spacing:-.01em}#info-btn{background:0 0;border:none;cursor:pointer;padding:4px;color:var(--muted);transition:color .15s}#info-btn:hover{color:var(--ai-text)}#info-btn svg{width:18px;height:18px;display:block}#chat{position:fixed;top:49px;bottom:90px;left:0;right:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;background:var(--chat-bg)}#chat .chat-inner{max-width:768px;margin:0 auto;padding:24px 16px;display:flex;flex-direction:column;gap:20px;min-height:100%}.message{display:flex;gap:12px;opacity:0;transform:translateY(8px);animation:.3s forwards messageIn}@keyframes messageIn{to{opacity:1;transform:translateY(0)}}.message.ai{align-items:flex-start}.message.ai .avatar{width:28px;height:28px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.message.ai .avatar svg{width:16px;height:16px;color:#fff}.message.ai .bubble{font-size:15px;line-height:1.6;color:var(--ai-text);max-width:85%;padding-top:4px}.message.user{justify-content:flex-end}.message.user .bubble{background:var(--user-bubble);color:var(--user-text);padding:10px 16px;border-radius:18px;font-size:15px;line-height:1.5;max-width:75%;word-break:break-word;white-space:pre-wrap}.typing-indicator{display:flex;gap:12px;align-items:flex-start;opacity:0;animation:.2s forwards messageIn}.typing-indicator .avatar{width:28px;height:28px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.typing-indicator .avatar svg{width:16px;height:16px;color:#fff}.typing-dots{display:flex;gap:4px;padding:12px 0 8px}.typing-dots span{width:6px;height:6px;border-radius:50%;background:var(--dot);animation:1.4s ease-in-out infinite dotPulse}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes dotPulse{0%,100%,60%{opacity:.3;transform:scale(1)}30%{opacity:1;transform:scale(1.2)}}#input-bar{position:fixed;bottom:0;left:0;right:0;background:var(--chat-bg);border-top:1px solid var(--border);z-index:10}#chat-form{max-width:768px;margin:0 auto;padding:12px 16px;display:flex;align-items:flex-end;gap:8px}#chat-input{flex:1;padding:10px 16px;font-family:inherit;font-size:15px;line-height:1.4;color:var(--ai-text);background:var(--input-bg);border:1px solid var(--border);border-radius:24px;outline:0;transition:border-color .15s;resize:none;overflow-y:auto;max-height:150px;min-height:40px;-webkit-appearance:none;appearance:none;display:block}#chat-input:focus{border-color:#b0b0b0}#chat-input::placeholder{color:var(--muted)}#send-btn{width:36px;height:36px;border:none;border-radius:50%;background:var(--accent);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity .15s}#send-btn:hover{opacity:.8}#send-btn:disabled{opacity:.3;cursor:default}#send-btn svg{width:22px;height:22px;transform:translateX(1px)}.input-disclaimer{max-width:768px;margin:0 auto;padding:12px 16px 8px;text-align:center;font-size:11px;line-height:1.4;color:var(--muted)}.input-disclaimer a{color:var(--muted);text-decoration:none;transition:color .15s}.input-disclaimer a:hover{color:var(--ai-text)}#info-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;z-index:100;opacity:1;visibility:visible;transition:opacity .2s,visibility .2s}#info-overlay.hidden{opacity:0;visibility:hidden;pointer-events:none}#info-modal{background:#fff;border-radius:12px;padding:32px 28px;max-width:360px;width:calc(100% - 32px);position:relative;text-align:center}#info-modal h2{font-size:18px;font-weight:600;margin-bottom:12px;color:var(--ai-text)}#info-modal p{font-size:14px;color:#555;line-height:1.6;margin-bottom:8px}.info-sub{color:var(--muted)!important;font-style:italic;margin-top:4px}#close-info{position:absolute;top:12px;right:16px;background:0 0;border:none;font-size:24px;color:var(--muted);cursor:pointer;line-height:1;padding:4px}#close-info:hover{color:var(--ai-text)}.info-links{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.info-links a{font-size:12px;color:var(--muted);text-decoration:none;transition:color .15s}.info-links a:hover{color:var(--ai-text)}.info-links .separator{margin:0 8px;color:var(--border)}.signup-cta{position:fixed;right:1.5rem;bottom:1.5rem;z-index:60;display:flex;flex-direction:column;align-items:flex-end;opacity:0;transform:translateY(20px);pointer-events:none;transition:opacity .3s,transform .3s}.signup-cta.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.signup-cta-inner{background:rgba(255,255,255,.98);color:var(--ai-text);border:1px solid var(--border);border-radius:12px;padding:.75rem;box-shadow:0 4px 12px rgba(0,0,0,.15);backdrop-filter:blur(10px);min-width:320px;max-width:400px}.signup-cta-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;width:100%}.signup-cta-copy{display:flex;flex-direction:column;font-size:.85rem;color:var(--ai-text);line-height:1.3}.signup-cta-copy strong{font-weight:600}.signup-cta-close{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:0 0;border:none;border-radius:50%;cursor:pointer;color:var(--muted);flex-shrink:0;transition:.2s;padding:0}.signup-cta-close:hover{background:rgba(0,0,0,.1);color:var(--ai-text)}.signup-cta-form{display:flex;gap:.5rem;align-items:center;width:100%;flex-wrap:wrap}.signup-cta-input{flex:1 1 160px;min-width:0;height:36px;padding:0 .75rem;border-radius:6px;border:1px solid var(--border);background:var(--input-bg);font-family:inherit;font-size:14px;color:var(--ai-text);transition:.2s}.signup-cta-input:focus{outline:0;border-color:#b0b0b0;box-shadow:0 0 0 3px rgba(0,0,0,.05)}.signup-cta-button{flex:1 0 auto;height:36px;padding:0 1rem;border-radius:6px;border:none;background:var(--accent);color:#fff;font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;transition:.2s;white-space:nowrap}.signup-cta-button:hover{opacity:.9;transform:translateY(-1px)}.signup-cta-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.signup-cta-turnstile-wrapper{margin-top:.75rem;display:none;justify-content:center;height:65px;overflow:hidden}.signup-cta-turnstile-wrapper.is-visible{display:flex}.signup-cta-turnstile{transform:scale(.85);transform-origin:top center}.signup-message{font-size:.75rem;margin-top:.5rem;padding:.35rem .75rem;border-radius:6px;background:rgba(255,255,255,.95);border:1px solid;text-align:center}.signup-message.success{color:#2f7a4d;background:#f0fdf4;border-color:#bbf7d0}.signup-message.error{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.signup-message.hidden{display:none}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}@media (max-width:600px){.header-inner{padding:10px 12px}#chat .chat-inner{padding:16px 12px}#chat-form{padding:10px 12px}.message.ai .bubble{max-width:90%}.message.user .bubble{max-width:85%}.input-disclaimer{padding:0 12px 8px}.signup-cta-inner{padding:20px 16px;width:100%;max-width:none;border-radius:12px 12px 0 0}.signup-cta{left:0;right:0;bottom:0;align-items:stretch}}